mirror of
https://github.com/Ocelot-Social-Community/Ocelot-Social.git
synced 2025-12-13 07:46:06 +00:00
36 lines
1.4 KiB
Bash
Executable File
36 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
ROOT_DIR=$(dirname "$0")/..
|
|
# BUILD_COMMIT=${TRAVIS_COMMIT:-$(git rev-parse HEAD)}
|
|
|
|
VERSION=$(jq -r '.version' $ROOT_DIR/package.json)
|
|
IFS='.' read -r major minor patch <<< $VERSION
|
|
apps=(webapp backend neo4j maintenance)
|
|
tags=($major $major.$minor $major.$minor.$patch)
|
|
|
|
# These three docker images have already been built by now:
|
|
# docker build --build-arg BUILD_COMMIT=$BUILD_COMMIT --target production -t ocelotsocialnetwork/backend:latest $ROOT_DIR/backend
|
|
# docker build --build-arg BUILD_COMMIT=$BUILD_COMMIT --target production -t ocelotsocialnetwork/webapp:latest $ROOT_DIR/webapp
|
|
# docker build --build-arg BUILD_COMMIT=$BUILD_COMMIT -t ocelotsocialnetwork/neo4j:latest $ROOT_DIR/neo4j
|
|
# docker build -t ocelotsocialnetwork/maintenance:latest $ROOT_DIR/webapp/ -f $ROOT_DIR/webapp/Dockerfile.maintenance
|
|
|
|
echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin
|
|
|
|
for app in "${apps[@]}"
|
|
do
|
|
SOURCE="ocelotsocialnetwork/${app}:latest"
|
|
echo "docker push $SOURCE"
|
|
docker push $SOURCE
|
|
|
|
for tag in "${tags[@]}"
|
|
do
|
|
TARGET="ocelotsocialnetwork/${app}:${tag}"
|
|
if DOCKER_CLI_EXPERIMENTAL=enabled docker manifest inspect $TARGET >/dev/null; then
|
|
echo "docker image ${TARGET} already present, skipping ..."
|
|
else
|
|
echo -e "docker tag $SOURCE $TARGET\ndocker push $TARGET"
|
|
docker tag $SOURCE $TARGET
|
|
docker push $TARGET
|
|
fi
|
|
done
|
|
done
|