Skip to content

build(deps): bump go.mod and docker-compose to v5.0.2 (#8045) #1

build(deps): bump go.mod and docker-compose to v5.0.2 (#8045)

build(deps): bump go.mod and docker-compose to v5.0.2 (#8045) #1

name: Container tests
defaults:
run:
shell: bash
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
# Only run when something changes in the actual containers
paths:
- "containers/**"
- ".github/workflows/**"
- "!.github/workflows/docs**"
schedule:
- cron: '01 00 * * *'
workflow_dispatch:
inputs:
debug_enabled:
description: 'Run the build with tmate set "debug_enabled"'
type: boolean
required: false
default: false
testargs:
description: Add specific test to run like -run TestEnvironmentVariables or -run "(TestDdevFullSite.*|Test.*Pull)"
required: false
default: ""
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
DDEV_IGNORE_EXPIRING_KEYS: ${{ vars.DDEV_IGNORE_EXPIRING_KEYS || 'true' }}
DDEV_MAX_DAYS_BEFORE_CERT_EXPIRATION: ${{ vars.DDEV_MAX_DAYS_BEFORE_CERT_EXPIRATION || '90' }}
HOMEBREW_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
permissions:
contents: read
jobs:
container-build-and-test:
name: ${{ matrix.os }} - Test container ${{ matrix.containers }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-24.04]
containers: [dbserver, webserver, others]
steps:
- uses: actions/checkout@v5
- name: Set up Homebrew
id: set-up-homebrew
uses: Homebrew/actions/setup-homebrew@main
- name: Setup tmate session
uses: mxschmitt/action-tmate@v3
with:
limit-access-to-actor: true
github-token: ${{ secrets.GITHUB_TOKEN }}
if: ${{ github.event_name == 'workflow_dispatch' && inputs.debug_enabled }}
- name: Install test dependencies (linux-setup.sh)
if: matrix.os == 'ubuntu-24.04'
run: ./.github/workflows/linux-setup.sh
- uses: actions/setup-go@v6
with:
go-version: '>=1.23'
check-latest: true
- name: Build and test container ${{ matrix.containers }}
run: |
source ~/.bashrc
docker version
docker info
mkcert --version
set -eu -o pipefail
if [[ "${{ matrix.containers }}" == "dbserver" ]]; then
pushd containers/ddev-dbserver
echo "--- Test container dbserver"
time make test DOCKER_ARGS="--no-cache"
popd
elif [[ "${{ matrix.containers }}" == "webserver" ]]; then
pushd containers/ddev-webserver
echo "--- Test container ddev-webserver"
time make test DOCKER_ARGS="--no-cache"
popd
elif [[ "${{ matrix.containers }}" == "others" ]]; then
for dir in ddev-ssh-agent ddev-traefik-router ddev-xhgui test-ssh-server
do pushd containers/$dir
echo "--- Test container $dir"
time make test DOCKER_ARGS=--no-cache
popd
done
fi
set +eu