mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2024-01-19 02:48:50 +00:00
6113b99881
The build arguments `VCS_REF` and `VCS_VER` were renamed and given proper values according to their names. 1. `VCS_REVISION` holds the current SHA sum of the (git) HEAD pointer 2. `VCS_VERSION` now holds the contents of the `VERSION` file, i.e. a semver version tag (one can now inspect the image and find a proper version tag in the `org.opencontainers.image.version` label) The build arguments were given defaults in order to allow the `generic_build` and `generic_test` workflows to omit them (as they are not need there anyways). When publishing images, this is fina as the cache will rebuild almost all of the image except the last few layers which are `LABEL`s anyways.
52 lines
1.5 KiB
YAML
52 lines
1.5 KiB
YAML
name: 'Test the DMS Container Image'
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
cache-key:
|
|
required: true
|
|
type: string
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
run-tests:
|
|
name: 'Test'
|
|
runs-on: ubuntu-20.04
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
# Required to retrieve bats (core + extras):
|
|
submodules: recursive
|
|
|
|
# Get the cached build layers from the build job:
|
|
# This should always be a cache-hit, thus `restore-keys` fallback is not used.
|
|
# No new cache uploads should ever happen for this job.
|
|
- name: 'Retrieve image built from build cache'
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: /tmp/.buildx-cache
|
|
key: cache-buildx-${{ inputs.cache-key }}
|
|
|
|
# Importing from the cache should create the image within approx 30 seconds:
|
|
# Earlier `buildx` + `qemu` steps are not needed as no cache is exported,
|
|
# and only a single platform (AMD64) is loaded:
|
|
- name: 'Build AMD64 image from cache'
|
|
uses: docker/build-push-action@v3.1.1
|
|
with:
|
|
context: .
|
|
tags: mailserver-testing:ci
|
|
# Export the built image to the Docker host for use with BATS:
|
|
load: true
|
|
# Rebuilds the AMD64 image from the cache:
|
|
platforms: linux/amd64
|
|
cache-from: type=local,src=/tmp/.buildx-cache
|
|
|
|
- name: 'Run tests'
|
|
run: make generate-accounts tests
|
|
env:
|
|
CI: true
|
|
NAME: mailserver-testing:ci
|