deploy: pull app source from upstream instead of duplicating it

This repo now holds only the deploy pipeline. The application code (src,
templates, Dockerfile, pyproject, etc.) is removed and instead cloned from
the upstream repository at build time via the new SOURCE_REPO / SOURCE_REF
parameters (default: git.resf.org/documentation/rocky-man @ main). The
Docker image is built from that clone, eliminating the duplicate copy.

Also drop an accidentally committed .ruff_cache blob and ignore the
build-time clone dir and ruff cache.

Assisted-by: Claude Opus 4 (Claude Code)
This commit is contained in:
2026-06-16 08:04:30 -05:00
parent ca498b6f3c
commit ebb3925629
33 changed files with 26 additions and 3851 deletions
Vendored
+20 -4
View File
@@ -1,4 +1,8 @@
// Jenkinsfile for Rocky Man
//
// This repo holds only the deploy pipeline. The application source is pulled
// from the upstream repository at build time (see SOURCE_REPO / SOURCE_REF),
// so the code is not duplicated here.
pipeline {
agent {
kubernetes {
@@ -35,6 +39,16 @@ spec:
}
parameters {
string(
name: 'SOURCE_REPO',
defaultValue: 'https://git.resf.org/documentation/rocky-man.git',
description: 'Upstream application repository to build'
)
string(
name: 'SOURCE_REF',
defaultValue: 'main',
description: 'Branch or tag of the application to build'
)
string(
name: 'VERSIONS',
defaultValue: '8.10 9.8 10.2',
@@ -73,9 +87,11 @@ spec:
}
stages {
stage('Checkout') {
stage('Checkout Source') {
steps {
checkout scm
dir('rocky-man') {
git url: "${params.SOURCE_REPO}", branch: "${params.SOURCE_REF}"
}
}
}
@@ -87,7 +103,7 @@ until docker info > /dev/null 2>&1; do
echo "Waiting for Docker daemon..."
sleep 2
done
docker build -t rocky-man:${BUILD_NUMBER} .
docker build -t rocky-man:${BUILD_NUMBER} rocky-man
docker tag rocky-man:${BUILD_NUMBER} rocky-man:latest
'''
}
@@ -156,4 +172,4 @@ docker rmi rocky-man:latest || true
}
}
}
}
}