Fallback composer installs to source in CI

This commit is contained in:
Jeppe B
2026-06-10 19:22:52 +02:00
parent 7e85c74e60
commit d605eca574
2 changed files with 39 additions and 14 deletions
+22 -11
View File
@@ -166,17 +166,28 @@ jobs:
- name: Resolve dependencies
run: |
set -euo pipefail
for attempt in 1 2 3; do
if docker compose -f docker-compose.yml -f .github/docker-compose.ci.yml exec -T php1 sh -lc "cd /var/www/html && composer install --no-interaction --prefer-dist --no-progress"; then
exit 0
fi
if [ "$attempt" -eq 3 ]; then
exit 1
fi
sleep_seconds=$((attempt * 5))
echo "composer install failed; retrying in ${sleep_seconds}s (attempt $((attempt + 1))/3)" >&2
sleep "$sleep_seconds"
done
composer_install() {
install_mode="$1"
max_attempts="$2"
attempt=1
while :; do
if docker compose -f docker-compose.yml -f .github/docker-compose.ci.yml exec -T php1 sh -lc "cd /var/www/html && composer install --no-interaction ${install_mode} --no-progress"; then
return 0
fi
if [ "$attempt" -ge "$max_attempts" ]; then
return 1
fi
sleep_seconds=$((attempt * 5))
echo "composer install ${install_mode} failed; retrying in ${sleep_seconds}s (attempt $((attempt + 1))/${max_attempts})" >&2
sleep "$sleep_seconds"
attempt=$((attempt + 1))
done
}
composer_install --prefer-dist 3 || {
echo "Composer dist install failed; retrying with --prefer-source." >&2
composer_install --prefer-source 2
}
- name: Verify edge gateway test files
run: >