mirror of
https://github.com/mykitserver/docker-limesurvey.git
synced 2025-12-06 16:39:11 +01:00
Add ARM build in GitHub Actions
- Hint: Tried to use the plattform parameter of the build-push-action, however this failed with an error in the Jobs. Therefore, I used a matrix with the platforms. - The ARM build takes a long time.
This commit is contained in:
@@ -15,7 +15,7 @@ jobs:
|
|||||||
- 6.0/fpm-alpine/Dockerfile
|
- 6.0/fpm-alpine/Dockerfile
|
||||||
- 6.0/fpm/Dockerfile
|
- 6.0/fpm/Dockerfile
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: hadolint/hadolint-action@v1.5.0
|
- uses: hadolint/hadolint-action@v1.5.0
|
||||||
with:
|
with:
|
||||||
dockerfile: ${{ matrix.dockerfile }}
|
dockerfile: ${{ matrix.dockerfile }}
|
||||||
@@ -29,11 +29,20 @@ jobs:
|
|||||||
permissions:
|
permissions:
|
||||||
packages: write
|
packages: write
|
||||||
contents: read
|
contents: read
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
- linux/arm64
|
||||||
steps:
|
steps:
|
||||||
- name: 'Check out the repo'
|
- name: 'Check out the repo'
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
|
- name: 'Set up QEMU'
|
||||||
|
uses: docker/setup-qemu-action@v2
|
||||||
|
with:
|
||||||
|
platforms: 'arm64,arm'
|
||||||
- name: 'Set up Docker Buildx'
|
- name: 'Set up Docker Buildx'
|
||||||
uses: docker/setup-buildx-action@v1
|
uses: docker/setup-buildx-action@v2
|
||||||
with:
|
with:
|
||||||
buildkitd-flags: --debug
|
buildkitd-flags: --debug
|
||||||
- name: 'Log in to DockerHub'
|
- name: 'Log in to DockerHub'
|
||||||
@@ -61,6 +70,7 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.metadata-apache.outputs.tags }}
|
tags: ${{ steps.metadata-apache.outputs.tags }}
|
||||||
labels: ${{ steps.metadata-apache.outputs.labels }}
|
labels: ${{ steps.metadata-apache.outputs.labels }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|
||||||
- name: 'FPM variant metadata'
|
- name: 'FPM variant metadata'
|
||||||
id: metadata-fpm
|
id: metadata-fpm
|
||||||
@@ -81,6 +91,7 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.metadata-fpm.outputs.tags }}
|
tags: ${{ steps.metadata-fpm.outputs.tags }}
|
||||||
labels: ${{ steps.metadata-fpm.outputs.labels }}
|
labels: ${{ steps.metadata-fpm.outputs.labels }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|
||||||
- name: 'FPM Alpine variant metadata'
|
- name: 'FPM Alpine variant metadata'
|
||||||
id: metadata-fpm-alpine
|
id: metadata-fpm-alpine
|
||||||
@@ -101,3 +112,4 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.metadata-fpm-alpine.outputs.tags }}
|
tags: ${{ steps.metadata-fpm-alpine.outputs.tags }}
|
||||||
labels: ${{ steps.metadata-fpm-alpine.outputs.labels }}
|
labels: ${{ steps.metadata-fpm-alpine.outputs.labels }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ jobs:
|
|||||||
- 5.0/fpm-alpine/Dockerfile
|
- 5.0/fpm-alpine/Dockerfile
|
||||||
- 5.0/fpm/Dockerfile
|
- 5.0/fpm/Dockerfile
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- uses: hadolint/hadolint-action@v1.5.0
|
- uses: hadolint/hadolint-action@v1.5.0
|
||||||
with:
|
with:
|
||||||
dockerfile: ${{ matrix.dockerfile }}
|
dockerfile: ${{ matrix.dockerfile }}
|
||||||
@@ -29,11 +29,20 @@ jobs:
|
|||||||
permissions:
|
permissions:
|
||||||
packages: write
|
packages: write
|
||||||
contents: read
|
contents: read
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
- linux/arm64
|
||||||
steps:
|
steps:
|
||||||
- name: 'Check out the repo'
|
- name: 'Check out the repo'
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
|
- name: 'Set up QEMU'
|
||||||
|
uses: docker/setup-qemu-action@v2
|
||||||
|
with:
|
||||||
|
platforms: 'arm64,arm'
|
||||||
- name: 'Set up Docker Buildx'
|
- name: 'Set up Docker Buildx'
|
||||||
uses: docker/setup-buildx-action@v1
|
uses: docker/setup-buildx-action@v2
|
||||||
with:
|
with:
|
||||||
buildkitd-flags: --debug
|
buildkitd-flags: --debug
|
||||||
- name: 'Log in to DockerHub'
|
- name: 'Log in to DockerHub'
|
||||||
@@ -61,6 +70,7 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.metadata-apache.outputs.tags }}
|
tags: ${{ steps.metadata-apache.outputs.tags }}
|
||||||
labels: ${{ steps.metadata-apache.outputs.labels }}
|
labels: ${{ steps.metadata-apache.outputs.labels }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|
||||||
- name: 'FPM variant metadata'
|
- name: 'FPM variant metadata'
|
||||||
id: metadata-fpm
|
id: metadata-fpm
|
||||||
@@ -81,6 +91,7 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.metadata-fpm.outputs.tags }}
|
tags: ${{ steps.metadata-fpm.outputs.tags }}
|
||||||
labels: ${{ steps.metadata-apache.outputs.labels }}
|
labels: ${{ steps.metadata-apache.outputs.labels }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|
||||||
- name: 'FPM Alpine variant metadata'
|
- name: 'FPM Alpine variant metadata'
|
||||||
id: metadata-fpm-alpine
|
id: metadata-fpm-alpine
|
||||||
@@ -101,3 +112,4 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.metadata-fpm-alpine.outputs.tags }}
|
tags: ${{ steps.metadata-fpm-alpine.outputs.tags }}
|
||||||
labels: ${{ steps.metadata-apache.outputs.labels }}
|
labels: ${{ steps.metadata-apache.outputs.labels }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|||||||
@@ -12,12 +12,20 @@ jobs:
|
|||||||
- apache
|
- apache
|
||||||
- fpm-alpine
|
- fpm-alpine
|
||||||
- fpm
|
- fpm
|
||||||
|
platform:
|
||||||
|
- linux/amd64
|
||||||
|
- linux/arm64
|
||||||
steps:
|
steps:
|
||||||
- name: 'Check out the repo'
|
- name: 'Check out the repo'
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: 'Set up QEMU'
|
||||||
|
uses: docker/setup-qemu-action@v2
|
||||||
|
with:
|
||||||
|
platforms: 'arm64,arm'
|
||||||
|
|
||||||
- name: 'Set up Docker Buildx'
|
- name: 'Set up Docker Buildx'
|
||||||
uses: docker/setup-buildx-action@v1
|
uses: docker/setup-buildx-action@v2
|
||||||
|
|
||||||
- name: 'Build Container images'
|
- name: 'Build Container images'
|
||||||
uses: docker/build-push-action@v2
|
uses: docker/build-push-action@v2
|
||||||
@@ -26,6 +34,7 @@ jobs:
|
|||||||
push: false
|
push: false
|
||||||
load: true
|
load: true
|
||||||
tags: docker.io/martialblog/limesurvey:6-${{ matrix.context }}
|
tags: docker.io/martialblog/limesurvey:6-${{ matrix.context }}
|
||||||
|
platforms: ${{ matrix.platform }}
|
||||||
|
|
||||||
- name: 'Run Structure tests'
|
- name: 'Run Structure tests'
|
||||||
uses: plexsystems/container-structure-test-action@v0.2.0
|
uses: plexsystems/container-structure-test-action@v0.2.0
|
||||||
|
|||||||
@@ -14,10 +14,13 @@ jobs:
|
|||||||
- fpm
|
- fpm
|
||||||
steps:
|
steps:
|
||||||
- name: 'Check out the repo'
|
- name: 'Check out the repo'
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: 'Set up QEMU'
|
||||||
|
uses: docker/setup-qemu-action@v2
|
||||||
|
|
||||||
- name: 'Set up Docker Buildx'
|
- name: 'Set up Docker Buildx'
|
||||||
uses: docker/setup-buildx-action@v1
|
uses: docker/setup-buildx-action@v2
|
||||||
|
|
||||||
- name: 'Build Container images'
|
- name: 'Build Container images'
|
||||||
uses: docker/build-push-action@v2
|
uses: docker/build-push-action@v2
|
||||||
|
|||||||
@@ -21,9 +21,6 @@ fileExistenceTests:
|
|||||||
path: '/var/www/html/admin/index.php'
|
path: '/var/www/html/admin/index.php'
|
||||||
shouldExist: true
|
shouldExist: true
|
||||||
permissions: '-rw-rw-r--'
|
permissions: '-rw-rw-r--'
|
||||||
- name: 'Ldap syslink'
|
|
||||||
path: '/usr/lib/x86_64-linux-gnu/libldap.so'
|
|
||||||
shouldExist: true
|
|
||||||
- name: "Dependencies - PHP - gd"
|
- name: "Dependencies - PHP - gd"
|
||||||
path: '/usr/local/etc/php/conf.d/docker-php-ext-gd.ini'
|
path: '/usr/local/etc/php/conf.d/docker-php-ext-gd.ini'
|
||||||
shouldExist: true
|
shouldExist: true
|
||||||
|
|||||||
Reference in New Issue
Block a user