################################################################################
# Build
build:
docker build -t webnist_web:${CI_PIPELINE_ID} ./web
################################################################################
# Version documentation
getversions:
docker run --entrypoint python webnist_web:${CI_PIPELINE_ID} --version
docker run --entrypoint pip webnist_web:${CI_PIPELINE_ID} freeze
################################################################################
# Review
reviewconf: dc env catconf
dc:
sed -e "s/
/webnist_web:${CI_PIPELINE_ID}/" docker-compose.staging.yml > docker-compose.yml
env:
sed -e "s//${CI_COMMIT_SHA}/" env.template > env
catconf:
@echo "#######################################"
@echo "# docker-compose.yml "
@echo
@cat docker-compose.yml
@echo
@echo "#######################################"
@echo "# env "
@echo
@cat env
@echo
@echo "#######################################"
@echo
up: reviewconf
docker-compose -p ${CI_COMMIT_REF_NAME}_${CI_COMMIT_SHA} up -d
kill: reviewconf
docker-compose -p ${CI_COMMIT_REF_NAME}_${CI_COMMIT_SHA} kill
################################################################################
# Publish
tag:
docker tag webnist_web:${CI_PIPELINE_ID} ${REGISTRY}/webnist_web
push:
docker push ${REGISTRY}/webnist_web
################################################################################
# Clean
cleant:
docker rmi -f webnist_web:${CI_PIPELINE_ID}
cleanr:
docker rmi -f ${REGISTRY}/webnist_web
################################################################################
# Deploy
deploy:
docker -H ${PROD_HOST} service update --force --detach --image=$(docker inspect --format='{{index .RepoDigests 0}}' ${REGISTRY}/webnist_web) ${PROD_SERVICE_NAME}