29 lines
836 B
Bash
29 lines
836 B
Bash
#!/usr/bin/env bash
|
|
|
|
# Publishes the most recent web container to docker hubs repo.
|
|
# This script assumes docker push works.
|
|
# You must set up docker push on your own.
|
|
|
|
set -eu
|
|
|
|
|
|
DOCKER_REPO="trailofbits/deepstate"
|
|
IMAGE_NAME="deepstate"
|
|
echo "IMAGE_NAME $IMAGE_NAME"
|
|
|
|
IMAGE_ID=$(docker images $IMAGE_NAME:latest --format "{{.ID}}")
|
|
|
|
if [ -n "$DOCKER_USERNAME" ]; then echo "Found username"; fi
|
|
if [ -n "$DOCKER_PASSWORD" ]; then echo "Found password"; fi
|
|
|
|
if [ -n "$DOCKER_USERNAME" ] && [ -n "$DOCKER_PASSWORD" ]; then
|
|
echo "Logging in using ENV creds"
|
|
docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"
|
|
fi
|
|
|
|
echo "Pushing image $IMAGE_NAME:$TRAVIS_BRANCH"
|
|
docker tag $IMAGE_ID $DOCKER_REPO
|
|
docker tag $IMAGE_ID ${DOCKER_REPO}:${TRAVIS_BUILD_NUMBER}
|
|
docker push $DOCKER_REPO
|
|
docker push ${DOCKER_REPO}:${TRAVIS_BUILD_NUMBER}
|