diff --git a/.env.notification b/.env.notification new file mode 100644 index 0000000..c341cf3 --- /dev/null +++ b/.env.notification @@ -0,0 +1,5 @@ +RELEASE=notification-server +VERSION=1 +BUILD=1 +FIX=1 + diff --git a/.github/workflows/ci-build-image-notification.yml b/.github/workflows/ci-build-image-notification.yml new file mode 100644 index 0000000..4114d2f --- /dev/null +++ b/.github/workflows/ci-build-image-notification.yml @@ -0,0 +1,42 @@ +name: Build and publish notification + +on: + push: + branches: + - wip + paths: + - '.env.notification' + +jobs: + PackageDeploy: + runs-on: ubuntu-22.04 + + steps: + - uses: actions/checkout@v2 + + - name: Docker Setup BuildX + uses: docker/setup-buildx-action@v2 + + - name: Load environment variables and set them + run: | + if [ -f .env.notification ]; then + export $(cat .env.notification | grep -v '^#' | xargs) + fi + echo "RELEASE=$RELEASE" >> $GITHUB_ENV + echo "VERSION=$VERSION" >> $GITHUB_ENV + echo "BUILD=$BUILD" >> $GITHUB_ENV + echo "FIX=$FIX" >> $GITHUB_ENV + - name: Set repo + run: | + LOWER_CASE_GITHUB_REPOSITORY=$(echo $GITHUB_REPOSITORY | tr '[:upper:]' '[:lower:]') + echo "DOCKER_TAG_CUSTOM=ghcr.io/${LOWER_CASE_GITHUB_REPOSITORY}:$RELEASE-$VERSION.$BUILD.$FIX" >> $GITHUB_ENV + echo "$GITHUB_ENV" + - name: Docker Build + run: | + cd notification-server && docker image build --tag $DOCKER_TAG_CUSTOM -f Dockerfile . + + - name: Log in to GitHub container registry + run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u $ --password-stdin + + - name: Push Docker image to ghcr + run: docker push $DOCKER_TAG_CUSTOM