diff options
Diffstat (limited to '.forgejo/workflows/docker-ci.yml')
| -rw-r--r-- | .forgejo/workflows/docker-ci.yml | 41 |
1 files changed, 13 insertions, 28 deletions
diff --git a/.forgejo/workflows/docker-ci.yml b/.forgejo/workflows/docker-ci.yml index 033fe51..49a885f 100644 --- a/.forgejo/workflows/docker-ci.yml +++ b/.forgejo/workflows/docker-ci.yml @@ -10,38 +10,23 @@ on: jobs: build: runs-on: docker + steps: - name: Checkout code uses: actions/checkout@v4 + - name: Build Docker image + run: docker build -t ${{ env.REPO_URL }}/${{ github.repository }}:latest . + + - name: Tag image with commit SHA + run: docker tag ${{ env.REPO_URL }}/${{ github.repository }}:latest ${{ env.REPO_URL }}/${{ github.repository }}:${{ github.sha }} + - name: Login to Forgejo Container Registry if: github.event_name != 'pull_request' - uses: docker/login-action@v3 - with: - registry: ${{ env.REPO_URL }} - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} + run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ${{ env.REPO_URL }} -u ${{ github.actor }} --password-stdin - - name: Extract metadata - id: meta - uses: docker/metadata-action@v5 - with: - images: ${{ env.REPO_URL }}/${{ github.repository }} - tags: | - type=ref,event=branch - type=ref,event=pr - type=semver,pattern={{version}} - type=semver,pattern={{major}}.{{minor}} - type=sha,prefix={{branch}}- - type=raw,value=latest,enable={{is_default_branch}} - - - name: Build and push Docker image - uses: docker/build-push-action@v5 - with: - context: . - file: ./Dockerfile - push: ${{ github.event_name != 'pull_request' }} - tags: ${{ steps.meta.outputs.tags }} - labels: ${{ steps.meta.outputs.labels }} - cache-from: type=gha - cache-to: type=gha,mode=max + - name: Push Docker images + if: github.event_name != 'pull_request' + run: | + docker push ${{ env.REPO_URL }}/${{ github.repository }}:latest + docker push ${{ env.REPO_URL }}/${{ github.repository }}:${{ github.sha }} |
