name: Build image on: [push, workflow_dispatch] env: ENDPOINT: "neingeist/docker-mod-openssh-server-tweaks" BRANCH: "master" jobs: build: runs-on: ubuntu-latest permissions: packages: write steps: - uses: actions/checkout@v3 - name: Build image run: | docker build --no-cache -t ${{ github.sha }} . - name: Tag image if: ${{ github.ref == format('refs/heads/{0}', env.BRANCH) && env.ENDPOINT != 'user/endpoint' }} run: | docker tag ${{ github.sha }} ${ENDPOINT} docker tag ${{ github.sha }} ${ENDPOINT}:${{ github.sha }} docker tag ${{ github.sha }} ghcr.io/${ENDPOINT} docker tag ${{ github.sha }} ghcr.io/${ENDPOINT}:${{ github.sha }} - name: Login to GitHub Container Registry if: ${{ github.ref == format('refs/heads/{0}', env.BRANCH) && env.ENDPOINT != 'user/endpoint' }} run: | echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin - name: Push tags to GitHub Container Registry if: ${{ github.ref == format('refs/heads/{0}', env.BRANCH) && env.ENDPOINT != 'user/endpoint' }} run: | docker push ghcr.io/${ENDPOINT}:${{ github.sha }} docker push ghcr.io/${ENDPOINT}