Merge pull request #95 from druidfi/renovate/axllent-mailpit-1.21.x #267
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: [push] | |
jobs: | |
test: | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: ubuntu-20.04 | |
- os: ubuntu-22.04 | |
- os: ubuntu-24.04 | |
- os: macos-13 | |
- os: macos-14 | |
- os: macos-15 | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Setup Linux requirements | |
if: runner.os == 'Linux' | |
run: | | |
sudo apt update --yes | |
sudo apt install libnss3-tools | |
- name: Set up Homebrew | |
if: runner.os == 'macOS' | |
uses: Homebrew/actions/setup-homebrew@master | |
- name: Install homebrew dependencies | |
if: runner.os == 'macOS' | |
run: | | |
set -x | |
sudo chmod ugo+w /usr/local/bin | |
brew install -q docker docker-compose lima mkcert nss | |
- name: Install and start Colima | |
if: runner.os == 'macOS' | |
run: | | |
brew install -q colima | |
colima version | |
colima start --cpu 3 --memory 6 --disk 100 --mount-type=sshfs --dns=1.1.1.1 | |
sudo security authorizationdb write com.apple.trust-settings.admin allow | |
env: | |
HOMEBREW_NO_AUTO_UPDATE: "1" | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- name: Show debug info | |
run: | | |
make debug | |
make ping | |
- name: Start up Stonehenge | |
run: make up | |
- name: Ping docker.so should resolve to 127.0.0.1 now | |
run: make ping | |
- name: Check that DNS works when curling Google. Expecting HTTP/2 200 | |
run: curl -Is https://www.google.com | head -1 | |
- name: Check if Traefik can be accessed from traefik.docker.so | |
run: | | |
printf "CURL traefik.docker.so for checking access starts" | |
until curl -s "https://traefik.docker.so/dashboard/#/" | grep -o "<title>Traefik[^<]*" | tail -c+8; do true; done > /dev/null | |
printf "CURL traefik.docker.so for checking access ends" | |
- name: Tear down Stonehenge | |
run: make down | |
- name: Turn off colima | |
if: runner.os == 'macOS' | |
run: colima stop | |
- name: Clean up Homebrew | |
if: runner.os == 'macOS' | |
continue-on-error: true | |
run: | | |
brew update | |
brew autoremove | |
brew cleanup |