Fix Jenkins compose smoke when docker CLI is missing
Bootstrap static docker binary in the pipeline; Jenkins has docker.sock mounted but the official image does not ship the docker client.
This commit is contained in:
parent
08383b64bf
commit
368070e3ba
2 changed files with 10 additions and 0 deletions
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -1,3 +1,5 @@
|
||||||
.env
|
.env
|
||||||
*.local
|
*.local
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
.ci-bin/
|
||||||
|
dist/
|
||||||
|
|
|
||||||
8
Jenkinsfile
vendored
8
Jenkinsfile
vendored
|
|
@ -25,6 +25,14 @@ pipeline {
|
||||||
steps {
|
steps {
|
||||||
sh '''
|
sh '''
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
if ! command -v docker >/dev/null 2>&1; then
|
||||||
|
echo "Installing static docker CLI (Jenkins image has socket, not binary)..."
|
||||||
|
mkdir -p .ci-bin
|
||||||
|
curl -fsSL "https://download.docker.com/linux/static/stable/x86_64/docker-27.4.1.tgz" \
|
||||||
|
| tar xz --strip-components=1 -C .ci-bin docker/docker
|
||||||
|
chmod +x .ci-bin/docker
|
||||||
|
export PATH="$PWD/.ci-bin:$PATH"
|
||||||
|
fi
|
||||||
mkdir -p dist
|
mkdir -p dist
|
||||||
sed '/exclude_from_hc:/d' docker-compose.yml > dist/docker-compose.coolify.yml
|
sed '/exclude_from_hc:/d' docker-compose.yml > dist/docker-compose.coolify.yml
|
||||||
docker compose -f dist/docker-compose.coolify.yml config -q
|
docker compose -f dist/docker-compose.coolify.yml config -q
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue