Skip to content

Commit

Permalink
feat: Add workflows for postgres and solr
Browse files Browse the repository at this point in the history
  • Loading branch information
saschanowak committed Jul 8, 2024
1 parent b954e6e commit ae39b64
Show file tree
Hide file tree
Showing 7 changed files with 146 additions and 5 deletions.
71 changes: 71 additions & 0 deletions .github/workflows/postgres.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: 'Build postgres docker image'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

on:
schedule:
- cron: 0 7 * * THU
push:
branches:
- main
paths:
- postgres/**
pull_request:
branches:
- main
paths:
- postgres/**
workflow_dispatch:
inputs: {}

jobs:
build-docker-image:
name: 'Build postgres-${{ matrix.image.version }} docker image'
runs-on: ubuntu-latest

strategy:
fail-fast: false
max-parallel: 10
matrix:
image:
- file: 12.Dockerfile
- file: 14.Dockerfile
- file: Dockerfile

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

- name: Setup QEMU
uses: docker/setup-qemu-action@v3

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Read version from Dockerfile
id: docker
run: echo "version=$(./extract-version.sh ./postgres/Dockerfile)" >> $GITHUB_OUTPUT

- name: Login to GHCR
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push (postgres-fpm)
uses: docker/build-push-action@v6
with:
builder: ${{ steps.buildx.outputs.name }}
context: ./postgres
target: postgres
file: ./postgres/${{ matrix.image.file || 'Dockerfile' }}
push: ${{ github.event_name != 'pull_request' }}
tags: ghcr.io/netlogix/docker/postgres:${{ steps.docker.outputs.version }}
platforms: linux/amd64,linux/arm64
cache-from: type=gha, scope=${{ github.workflow }}-postgres
cache-to: type=gha, scope=${{ github.workflow }}-postgres, mode=max

70 changes: 70 additions & 0 deletions .github/workflows/solr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: 'Build solr docker image'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

on:
schedule:
- cron: 0 7 * * THU
push:
branches:
- main
paths:
- solr/**
pull_request:
branches:
- main
paths:
- solr/**
workflow_dispatch:
inputs: {}

jobs:
build-docker-image:
name: 'Build solr-${{ matrix.image.version }} docker image'
runs-on: ubuntu-latest

strategy:
fail-fast: false
max-parallel: 10
matrix:
image:
- file: 8.Dockerfile
- file: Dockerfile

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

- name: Setup QEMU
uses: docker/setup-qemu-action@v3

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Read version from Dockerfile
id: docker
run: echo "version=$(./extract-version.sh ./solr/Dockerfile)" >> $GITHUB_OUTPUT

- name: Login to GHCR
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push (solr-fpm)
uses: docker/build-push-action@v6
with:
builder: ${{ steps.buildx.outputs.name }}
context: ./solr
target: solr
file: ./solr/${{ matrix.image.file || 'Dockerfile' }}
push: ${{ github.event_name != 'pull_request' }}
tags: ghcr.io/netlogix/docker/solr:${{ steps.docker.outputs.version }}
platforms: linux/amd64,linux/arm64
cache-from: type=gha, scope=${{ github.workflow }}-solr
cache-to: type=gha, scope=${{ github.workflow }}-solr, mode=max

2 changes: 1 addition & 1 deletion postgres/12.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:1
FROM postgres:12.19 AS database
FROM postgres:12.19 AS postgres

ENV TZ="Europe/Berlin"

Expand Down
2 changes: 1 addition & 1 deletion postgres/14.Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:1
FROM postgres:14.12 AS database
FROM postgres:14.12 AS postgres

ENV TZ="Europe/Berlin"

Expand Down
2 changes: 1 addition & 1 deletion postgres/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# syntax=docker/dockerfile:1
FROM postgres:16.3 AS database
FROM postgres:16.3 AS postgres

ENV TZ="Europe/Berlin"

Expand Down
2 changes: 1 addition & 1 deletion solr/8.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ RUN sed -i "s|name=core_|name=website-|i" /tmp/solr/Resources/Private/Solr/cores
&& cd /tmp/solr/Resources/Private/Solr/configsets/ext_solr_11_5_0/conf \
&& for f in _schema_analysis_*_core_*.json; do mv "$f" "$(echo "$f" | sed s/core_/website-/)"; done

FROM solr:8.11.3
FROM solr:8.11.3 AS solr

ENV SOLR_LOG_LEVEL=WARN \
SOLR_PORT=8983 \
Expand Down
2 changes: 1 addition & 1 deletion solr/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ RUN apt-get update && \
mkdir -p /tmp/solr && \
tar -zxvf /tmp/solr.tar.gz -C /tmp/solr --strip-components=1;

FROM solr:9.5.0
FROM solr:9.5.0 AS solr
ENV TERM=linux \
SOLR_LOG_LEVEL=WARN \
SOLR_PORT=8983 \
Expand Down

0 comments on commit ae39b64

Please sign in to comment.