Skip to content

Commit 503e086

Browse files
committed
jenkins: debug
1 parent 5b31553 commit 503e086

1 file changed

Lines changed: 57 additions & 5 deletions

File tree

Jenkinsfile

Lines changed: 57 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ pipeline {
1111
string(name: 'BRANCH_NAME', defaultValue: 'main', description: 'Branch to build')
1212
string(name: 'GIT_COMMIT', defaultValue: '', description: 'Commit SHA to build, optional')
1313
string(name: 'REPO_URL', defaultValue: 'https://github.com/star-bnl/star-sw.git', description: 'Repository URL')
14+
choice(name: 'BUILDX_DRIVER', choices: ['docker', 'docker-container'], description: 'Buildx driver to use for Jenkins debugging')
1415
}
1516

1617
environment {
@@ -40,6 +41,7 @@ pipeline {
4041
echo "PARAM_BRANCH_NAME=${params.BRANCH_NAME}"
4142
echo "PARAM_GIT_COMMIT=${params.GIT_COMMIT}"
4243
echo "PARAM_REPO_URL=${params.REPO_URL}"
44+
echo "PARAM_BUILDX_DRIVER=${params.BUILDX_DRIVER}"
4345
echo "JOB_NAME=${env.JOB_NAME}"
4446
echo "BUILD_NUMBER=${env.BUILD_NUMBER}"
4547
echo "BUILD_URL=${env.BUILD_URL}"
@@ -117,11 +119,51 @@ pipeline {
117119
echo "ARTIFACT_DIR=${ARTIFACT_DIR}"
118120
echo "STAR_BASE=${STAR_BASE}"
119121
echo "COMPILER=${COMPILER}"
122+
echo "BUILDX_DRIVER=${BUILDX_DRIVER}"
120123
echo "PATH=${PATH}"
121124
command -v docker
122125
docker --version
123126
docker info
124127
docker buildx version
128+
docker buildx ls
129+
docker context ls
130+
'''
131+
}
132+
}
133+
134+
stage('Registry Diagnostics') {
135+
steps {
136+
sh '''
137+
set +e
138+
echo "=== Proxy environment ==="
139+
env | grep -iE '^(http|https|no)_proxy=' || true
140+
141+
echo "=== Resolver configuration ==="
142+
cat /etc/resolv.conf || true
143+
144+
for host in github.com ghcr.io registry-1.docker.io; do
145+
echo "=== DNS lookup: ${host} ==="
146+
getent hosts "${host}"
147+
echo "lookup_exit_code=$?"
148+
149+
echo "=== HTTPS probe: ${host} ==="
150+
curl -I --connect-timeout 10 --max-time 20 "https://${host}" || true
151+
done
152+
153+
echo "=== Docker host connectivity ==="
154+
docker info || true
155+
'''
156+
}
157+
}
158+
159+
stage('Prefetch Base Image') {
160+
steps {
161+
sh '''
162+
set -euxo pipefail
163+
base_image="ghcr.io/star-bnl/star-spack:v0.3.0-${STAR_BASE}-${COMPILER}"
164+
echo "=== Pulling base image ${base_image} ==="
165+
docker pull "${base_image}"
166+
docker image inspect "${base_image}" --format '{{.Id}}'
125167
'''
126168
}
127169
}
@@ -133,11 +175,20 @@ pipeline {
133175
builder_name="star-sw-${BUILD_NUMBER}-${STAR_BASE}-${COMPILER}"
134176
echo "${builder_name}" > .buildx-builder-name
135177
docker buildx rm "${builder_name}" || true
136-
docker buildx create \
137-
--name "${builder_name}" \
138-
--driver docker-container \
139-
--driver-opt "env.BUILDKIT_STEP_LOG_MAX_SIZE=${BUILDKIT_STEP_LOG_MAX_SIZE}" \
140-
--use
178+
179+
if [ "${BUILDX_DRIVER}" = "docker-container" ]; then
180+
docker buildx create \
181+
--name "${builder_name}" \
182+
--driver docker-container \
183+
--driver-opt "env.BUILDKIT_STEP_LOG_MAX_SIZE=${BUILDKIT_STEP_LOG_MAX_SIZE}" \
184+
--use
185+
else
186+
docker buildx create \
187+
--name "${builder_name}" \
188+
--driver docker \
189+
--use
190+
fi
191+
141192
docker buildx inspect "${builder_name}" --bootstrap
142193
'''
143194
}
@@ -158,6 +209,7 @@ pipeline {
158209
docker buildx build \
159210
--builder "${builder_name}" \
160211
--progress plain \
212+
--pull=false \
161213
--build-arg "starenv=${STAR_BASE}" \
162214
--build-arg "compiler=${COMPILER}" \
163215
--tag "${image_tag}" \

0 commit comments

Comments
 (0)