A realtime multiplayer version of the boardgame Ricochet Robots
at master 1.3 kB view raw
1name: Push 2on: 3 push: 4 5jobs: 6 build-and-push-container-image: 7 runs-on: ubuntu-latest 8 env: 9 REGISTRY: ghcr.io 10 steps: 11 - uses: actions/checkout@v2 12 13 - name: Set environment variables 14 run: | 15 echo "IMAGE_NAME=$(echo "$REGISTRY/$GITHUB_REPOSITORY" | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV 16 echo "GIT_SHA=$(echo ${{ github.sha }} | cut -c1-7)" >> $GITHUB_ENV 17 if [[ "${{ github.ref }}" == "refs/heads/"* ]]; then 18 GIT_REF=$(echo "${{ github.ref }}" | cut -d/ -f3) 19 else 20 GIT_REF=$(echo "${{ github.ref }}" | cut -d/ -f3) 21 fi 22 echo "GIT_REF=${GIT_REF}" >> $GITHUB_ENV 23 echo "IMAGE_TAG=${GIT_REF}-${GIT_SHA}" >> $GITHUB_ENV 24 25 - name: Docker Build 26 run: docker build --tag ${IMAGE_NAME}:${IMAGE_TAG} --build-arg BUILD_ENV=github --build-arg GIT_REF=${GIT_REF} --build-arg GIT_SHA=${GIT_SHA} . 27 28 - name: Docker Login 29 run: echo ${{ secrets.GITHUB_TOKEN }} | docker login $REGISTRY -u "${{ github.actor }}" --password-stdin 30 31 - name: Docker Push (Tagged) 32 run: docker push ${IMAGE_NAME}:${IMAGE_TAG} 33 34 - name: Tag image as latest 35 run: docker tag ${IMAGE_NAME}:${IMAGE_TAG} ${IMAGE_NAME}:latest 36 37 - name: Docker Push (Latest) 38 run: docker push ${IMAGE_NAME}:latest