Skip to content

Commit

Permalink
CI: add basic image build jobs
Browse files Browse the repository at this point in the history
This version only build development images. We'll add release images
later.
  • Loading branch information
stsnel committed Dec 13, 2024
1 parent 4dc4de8 commit 2169706
Show file tree
Hide file tree
Showing 4 changed files with 184 additions and 0 deletions.
46 changes: 46 additions & 0 deletions .github/workflows/build-push-image-ckan.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
name: "Build CKAN image and push it to registry"

on:
push:
branches:
- 'development'
- 'dev-update-docker'
paths:
- '.github/workflows/build-push-image-ckan.yml'
- 'docker/images/ckan/**'

jobs:
push-image:
if: github.repository == 'utrechtuniversity/epos-msl'
runs-on: ubuntu-22.04
permissions:
contents: read
packages: write
steps:
- name: Extract branch name
shell: bash
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
id: extract_branch

- name: Check out EPOS-MSL catalog repository
uses: actions/checkout@v4
with:
path: yoda
repository: UtrechtUniversity/epos-msl
ref: ${{ steps.extract_branch.outputs.branch }}

- name: Authenticate to the container registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
uses: docker/build-push-action@v6
with:
context: epos-msl/docker/images/ckan
file: epos-msl/docker/images/ckan/Dockerfile
push: true
tags: latest
46 changes: 46 additions & 0 deletions .github/workflows/build-push-image-mslapi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
name: "Build MSL-API image and push it to registry"

on:
push:
branches:
- 'development'
- 'dev-update-docker'
paths:
- '.github/workflows/build-push-image-mslapi.yml'
- 'docker/images/msl-api/**'

jobs:
push-image:
if: github.repository == 'utrechtuniversity/epos-msl'
runs-on: ubuntu-22.04
permissions:
contents: read
packages: write
steps:
- name: Extract branch name
shell: bash
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
id: extract_branch

- name: Check out EPOS-MSL catalog repository
uses: actions/checkout@v4
with:
path: yoda
repository: UtrechtUniversity/epos-msl
ref: ${{ steps.extract_branch.outputs.branch }}

- name: Authenticate to the container registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
uses: docker/build-push-action@v6
with:
context: epos-msl/docker/images/msl-api
file: epos-msl/docker/images/msl-api/Dockerfile
push: true
tags: latest
46 changes: 46 additions & 0 deletions .github/workflows/build-push-image-nginx.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
name: "Build Nginx image and push it to registry"

on:
push:
branches:
- 'development'
- 'dev-update-docker'
paths:
- '.github/workflows/build-push-image-nginx.yml'
- 'docker/images/nginx/**'

jobs:
push-image:
if: github.repository == 'utrechtuniversity/epos-msl'
runs-on: ubuntu-22.04
permissions:
contents: read
packages: write
steps:
- name: Extract branch name
shell: bash
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
id: extract_branch

- name: Check out EPOS-MSL catalog repository
uses: actions/checkout@v4
with:
path: yoda
repository: UtrechtUniversity/epos-msl
ref: ${{ steps.extract_branch.outputs.branch }}

- name: Authenticate to the container registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
uses: docker/build-push-action@v6
with:
context: epos-msl/docker/images/nginx
file: epos-msl/docker/images/nginx/Dockerfile
push: true
tags: latest
46 changes: 46 additions & 0 deletions .github/workflows/build-push-image-solr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
name: "Build Solr image and push it to registry"

on:
push:
branches:
- 'development'
- 'dev-update-docker'
paths:
- '.github/workflows/build-push-image-solr.yml'
- 'docker/images/solr/**'

jobs:
push-image:
if: github.repository == 'utrechtuniversity/epos-msl'
runs-on: ubuntu-22.04
permissions:
contents: read
packages: write
steps:
- name: Extract branch name
shell: bash
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
id: extract_branch

- name: Check out EPOS-MSL catalog repository
uses: actions/checkout@v4
with:
path: yoda
repository: UtrechtUniversity/epos-msl
ref: ${{ steps.extract_branch.outputs.branch }}

- name: Authenticate to the container registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
uses: docker/build-push-action@v6
with:
context: epos-msl/docker/images/solr
file: epos-msl/docker/images/solr/Dockerfile
push: true
tags: latest

0 comments on commit 2169706

Please sign in to comment.