name: Build Docker Image on Commit on: push: branches: - main tags: - '!' # Exclude tags jobs: build-and-publish: runs-on: docker-builder steps: - name: Checkout repository uses: actions/checkout@v4 - name: Set REPO_VARS id: repo-url run: | echo "REPO_HOST=$(echo "${{ github.server_url }}" | sed 's~http[s]*://~~g')" >> $GITHUB_ENV echo "REPO_PATH=${{ github.repository }}" >> $GITHUB_ENV - name: Build and push Docker images run: | # Build Docker image with commit SHA docker build -t $REPO_HOST/$REPO_PATH:${{ github.sha }} . docker push $REPO_HOST/$REPO_PATH:${{ github.sha }} # Build Docker image with nightly tag docker tag $REPO_HOST/$REPO_PATH:${{ github.sha }} $REPO_HOST/$REPO_PATH:nightly docker push $REPO_HOST/$REPO_PATH:nightly # Remove local images to save storage docker rmi $REPO_HOST/$REPO_PATH:${{ github.sha }} docker rmi $REPO_HOST/$REPO_PATH:nightly