Skip to content

Commit

Permalink
Add job to build and push docker images on release
Browse files Browse the repository at this point in the history
Currently also runs on pull request to troubleshoot.

Update workflow that builds docker images
  • Loading branch information
daanboer committed Aug 7, 2024
1 parent bc020cc commit 0b24542
Showing 1 changed file with 89 additions and 0 deletions.
89 changes: 89 additions & 0 deletions .github/workflows/build-images.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# SPDX-FileCopyrightText: LXCat team
#
# SPDX-License-Identifier: AGPL-3.0-or-later

name: Create and publish Docker images to use in production

on:
release:
types: [published]
pull_request:
branches:
- main
types:
- opened
- reopened
- synchronize
- ready_for_review

env:
REGISTRY: ghcr.io

permissions:
contents: read
packages: write
attestations: write
id-token: write

jobs:
build-and-push-admin:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Log in to the container registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
id: push
uses: docker/build-push-action@v6
with:
image: lxcat-project/admin-cli
tags: ${{ github.ref_name }}, latest
registry: ${{ env.REGISTRY }}
dockerfile: packages/database/Dockerfile
push: true

- name: Generate artifact attestation
uses: actions/attest-build-provenance@v1
with:
subject-name: ${{ env.REGISTRY }}/lxcat-app/admin-cli
subject-digest: ${{ steps.push.outputs.digest }}
push-to-registry: true

build-and-push-app:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Log in to the container registry
uses: docker/login-action@v3
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
id: push
uses: docker/build-push-action@v6
with:
image: lxcat-project/app
tags: ${{ github.ref_name }}, latest
registry: ${{ env.REGISTRY }}
dockerfile: app/Dockerfile
push: true

- name: Generate artifact attestation
uses: actions/attest-build-provenance@v1
with:
subject-name: ${{ env.REGISTRY }}/lxcat-project/app
subject-digest: ${{ steps.push.outputs.digest }}
push-to-registry: true

0 comments on commit 0b24542

Please sign in to comment.