mirror of
https://github.com/factoriotools/factorio-docker.git
synced 2025-02-10 07:08:44 +01:00
CI: try fix tag building, fix upload, add easy manual pushing, more fixes
This commit is contained in:
parent
2eea2a25e4
commit
77edb05109
48
build.sh
48
build.sh
@ -1,46 +1,56 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
set -eox pipefail
|
set -eox pipefail
|
||||||
|
|
||||||
if [ -z "$1" ]; then
|
if [ -z "$1" ] && [ -n "$CI" ]; then
|
||||||
echo "Usage: ./build.sh \$VERSION_SHORT"
|
echo "Usage: ./build.sh \$VERSION_SHORT"
|
||||||
else
|
exit 1
|
||||||
|
elif [ "$CI" == "true" ]; then
|
||||||
VERSION_SHORT="$1"
|
VERSION_SHORT="$1"
|
||||||
|
else
|
||||||
|
VERSION_SHORT=$(find . -maxdepth 1 -type d | sort | tail -1 | grep -o "[0-9].[0-9]*")
|
||||||
|
EXTRA_TAG=latest
|
||||||
fi
|
fi
|
||||||
|
|
||||||
VERSION=$(grep -oP '[0-9]+\.[0-9]+\.[0-9]+' "$VERSION_SHORT/Dockerfile" | head -1)
|
|
||||||
DOCKER_REPO=factoriotools/factorio-docker
|
|
||||||
cd "$VERSION_SHORT" || exit
|
cd "$VERSION_SHORT" || exit
|
||||||
|
|
||||||
|
VERSION=$(grep -oP '[0-9]+\.[0-9]+\.[0-9]+' Dockerfile | head -1)
|
||||||
|
DOCKER_REPO=factoriotools/factorio
|
||||||
|
|
||||||
if [ "$TRAVIS_PULL_REQUEST" == "true" ]; then
|
if [ "$TRAVIS_PULL_REQUEST" == "true" ]; then
|
||||||
TAG="$TRAVIS_PULL_REQUEST_SLUG"
|
TAGS="$DOCKER_REPO:$TRAVIS_PULL_REQUEST_SLUG"
|
||||||
else
|
else
|
||||||
if [ "$TRAVIS_BRANCH" == "master" ]; then
|
if [ "$TRAVIS_BRANCH" == "master" ]; then
|
||||||
TAG="$VERSION -t $DOCKER_REPO:$VERSION_SHORT"
|
TAGS="$DOCKER_REPO:$VERSION -t $DOCKER_REPO:$VERSION_SHORT"
|
||||||
else
|
elif [ -n "$TRAVIS_BRANCH" ]; then
|
||||||
TAG="$TRAVIS_BRANCH"
|
TAGS="$DOCKER_REPO:$TRAVIS_BRANCH"
|
||||||
|
elif [ "$CI" == "" ]; then
|
||||||
|
TAGS="$DOCKER_REPO:$VERSION -t $DOCKER_REPO:$VERSION_SHORT"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$EXTRA_TAG" ]; then
|
if [ -n "$EXTRA_TAG" ]; then
|
||||||
TAG="$TAG -t $DOCKER_REPO:$EXTRA_TAG"
|
TAGS="$TAGS -t $DOCKER_REPO:$EXTRA_TAG"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# shellcheck disable=SC2086
|
# shellcheck disable=SC2086
|
||||||
docker build . -t $DOCKER_REPO:$TAG
|
docker build . -t $TAGS
|
||||||
|
|
||||||
docker images
|
docker images
|
||||||
if [[ "$(dirname "$(git diff --name-only HEAD^)")" =~ $VERSION_SHORT ]] && [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST_BRANCH" == "" ]; then
|
|
||||||
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
|
|
||||||
docker push "$DOCKER_REPO:latest"
|
|
||||||
|
|
||||||
|
if [[ "$(dirname "$(git diff --name-only HEAD^)")" =~ $VERSION_SHORT ]] && [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_BRANCH" == "$VERSION" ] && [ "$TRAVIS_PULL_REQUEST_BRANCH" == "" ] || [ "$CI" == "" ]; then
|
||||||
|
if [ "$CI" == "true" ]; then
|
||||||
|
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$TRAVIS_BRANCH" ]; then
|
||||||
|
docker push "$DOCKER_REPO:$TRAVIS_BRANCH"
|
||||||
|
fi
|
||||||
|
if [ -n "$TRAVIS_TAG" ] || [ "$CI" == "" ]; then
|
||||||
|
docker push "$DOCKER_REPO:$VERSION"
|
||||||
|
docker push "$DOCKER_REPO:$VERSION_SHORT"
|
||||||
|
fi
|
||||||
if [ -n "$EXTRA_TAG" ]; then
|
if [ -n "$EXTRA_TAG" ]; then
|
||||||
docker push "$DOCKER_REPO:$EXTRA_TAG"
|
docker push "$DOCKER_REPO:$EXTRA_TAG"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -n "$TRAVIS_TAG" ]; then
|
|
||||||
docker push "$DOCKER_REPO:$VERSION"
|
|
||||||
docker push "$DOCKER_REPO:$VERSION_SHORT"
|
|
||||||
fi
|
|
||||||
|
|
||||||
curl -X POST https://hooks.microbadger.com/images/factoriotools/factorio/TmmKGNp8jKcFqZvcJhTCIAJVluw=
|
curl -X POST https://hooks.microbadger.com/images/factoriotools/factorio/TmmKGNp8jKcFqZvcJhTCIAJVluw=
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user