2525 - name : linux
2626 image : ubuntu-latest
2727 - name : mac
28- image : macos-14
28+ image : macos-13
2929 python-version :
3030 - ' 3.11'
3131 fail-fast : false
@@ -51,53 +51,15 @@ jobs:
5151 docker compose --version
5252
5353 # Note: we cannot use Docker Desktop because it has not been licensed for use in GithubActions
54-
55- - name : Install QEMU (macOS, arm64)
56- if : ${{ matrix.os.name == 'mac' }}
57- run : |
58- set -euxo pipefail
59- # Ensure arm64 Homebrew (avoid Rosetta/x86_64 bottles)
60- /usr/bin/arch -arm64 /bin/zsh -lc '
61- export PATH=/opt/homebrew/bin:/opt/homebrew/sbin:$PATH
62- brew update
63- brew install qemu
64- which qemu-img
65- qemu-img --version
66- '
67-
6854 - name : Docker installation - Mac
6955 if : ${{ matrix.os.name == 'mac' }}
7056 run : |
71- set -euxo pipefail
72- # Ensure we run under arm64 and use the arm64 Homebrew prefix (/opt/homebrew)
73- /usr/bin/arch -arm64 /bin/zsh -lc '
74- export PATH=/opt/homebrew/bin:/opt/homebrew/sbin:$PATH
75-
76- # Install required tools (qemu is mandatory for --vm-type=qemu)
77- brew update
78- brew install qemu colima docker docker-compose
79-
80- # Clean stale state to avoid disk conversion/mount issues
81- colima stop || true
82- colima delete -f || true
83- rm -rf "$HOME/.colima" "$HOME/.lima" || true
84-
85- # Start Colima with QEMU; allocate decent CPUs/RAM and disk for CI
86- colima start --vm-type=qemu --cpu 4 --memory 8 --runtime docker
87-
88- # Point Docker CLI to Colima's socket
89- echo "DOCKER_HOST=unix://${HOME}/.colima/docker.sock" >> "$GITHUB_ENV"
90-
91- # Compose v2 plugin (link whatever docker-compose brew installed)
92- mkdir -p ~/.docker/cli-plugins
93- ln -sfn "$(command -v docker-compose)" ~/.docker/cli-plugins/docker-compose
94-
95- # Sanity check
96- docker version
97- docker info
98- docker compose version
99- '
100-
57+ brew install colima docker docker-compose
58+ colima start -a vz -m 8 -r docker
59+ echo "DOCKER_HOST=unix://${HOME}/.colima/docker.sock" >> $GITHUB_ENV
60+ mkdir -p ~/.docker/cli-plugins
61+ ln -sfn /usr/local/bin/docker-compose ~/.docker/cli-plugins/docker-compose
62+
10163 - name : Install Python dependencies
10264 run : make requirements
10365
@@ -111,35 +73,3 @@ jobs:
11173
11274 - name : Repo setup-remotes tests
11375 run : ./tests/test_repo.sh
114-
115- - name: Dump Colima hostagent logs on failure
116- if: ${{ failure()}}
117- run: |
118- echo "=== DUMPING DOCKER & COMPOSE INFO ==="
119- docker version || true
120- docker info || true
121- docker ps -a || true
122- docker images || true
123- echo "=== DUMPING COLIMA LOGS ==="
124- LOG="$HOME/.colima/_lima/colima/ha.stderr.log"
125- if [ -f "$LOG" ]; then
126- echo "==== ha.stderr.log ===="
127- sed -n ' 1,400p' "$LOG"
128- echo "======================="
129- else
130- echo "ha.stderr.log not found at $LOG"
131- find $HOME/.colima -maxdepth 3 -type f -name '*stderr*' -print
132- fi
133- - name : Diagnostics (macOS arch & binaries)
134- if : ${{ failure() && matrix.os.name == 'mac' }}
135- run : |
136- echo "===GATHERING DIAGNOSTIC DATA ==="
137- set -euxo pipefail
138- uname -a
139- uname -m
140- which brew || true
141- brew --prefix || true
142- which colima || true
143- which limactl || true
144- if command -v colima >/dev/null; then file "$(which colima)"; fi
145- if command -v limactl >/dev/null; then file "$(which limactl)"; fi
0 commit comments