From a98d73a774657bd04c2e1c87c3a3fe3ef9b87880 Mon Sep 17 00:00:00 2001 From: jenkins Date: Sun, 8 Nov 2026 20:25:47 -0600 Subject: [PATCH] jenkins: retain Lesavka job bounds across reloads --- services/jenkins/configmap-jcasc.yaml | 70 +++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/services/jenkins/configmap-jcasc.yaml b/services/jenkins/configmap-jcasc.yaml index 4ed3a9ab..c3563249 100644 --- a/services/jenkins/configmap-jcasc.yaml +++ b/services/jenkins/configmap-jcasc.yaml @@ -201,6 +201,20 @@ data: } } pipelineJob('lesavka-ci-image') { + // Seed reloads replace Pipeline-added properties; retain the same bounds here. + properties { + disableConcurrentBuilds() + buildDiscarder { + strategy { + logRotator { + daysToKeepStr('30') + numToKeepStr('12') + artifactDaysToKeepStr('-1') + artifactNumToKeepStr('6') + } + } + } + } description('Bounded Atlas build of the Lesavka CI worker from an exact reviewed source revision. No product deployment.') parameters { stringParam('EXPECTED_SOURCE_REVISION', '', 'Exact reviewed Lesavka source commit.') @@ -222,6 +236,20 @@ data: } } pipelineJob('lesavka-compile') { + // Seed reloads replace Pipeline-added properties; retain the same bounds here. + properties { + disableConcurrentBuilds() + buildDiscarder { + strategy { + logRotator { + daysToKeepStr('14') + numToKeepStr('12') + artifactDaysToKeepStr('-1') + artifactNumToKeepStr('4') + } + } + } + } description('Exact-source native compilation on Atlas. Compiler evidence only; no signing, deployment or full gate claim.') parameters { stringParam('EXPECTED_SOURCE_REVISION', '', 'Exact reviewed Lesavka source commit.') @@ -244,6 +272,20 @@ data: } } pipelineJob('lesavka-android') { + // Seed reloads replace Pipeline-added properties; retain the same bounds here. + properties { + disableConcurrentBuilds() + buildDiscarder { + strategy { + logRotator { + daysToKeepStr('14') + numToKeepStr('12') + artifactDaysToKeepStr('-1') + artifactNumToKeepStr('4') + } + } + } + } description('Exact-source unsigned Direct/Play APK and AAB builds on Atlas. No signing, store publication or device access.') parameters { stringParam('EXPECTED_SOURCE_REVISION', '', 'Exact reviewed Lesavka source commit.') @@ -264,6 +306,20 @@ data: } } pipelineJob('lesavka-software-tests') { + // Seed reloads replace Pipeline-added properties; retain the same bounds here. + properties { + disableConcurrentBuilds() + buildDiscarder { + strategy { + logRotator { + daysToKeepStr('14') + numToKeepStr('8') + artifactDaysToKeepStr('-1') + artifactNumToKeepStr('4') + } + } + } + } description('Exact-source hygiene, ordinary workspace tests and production security contracts in a mapped user namespace. No host devices or deployment.') parameters { stringParam('EXPECTED_SOURCE_REVISION', '', 'Exact reviewed Lesavka source commit.') @@ -284,6 +340,20 @@ data: } } pipelineJob('lesavka-installer-tests') { + // Seed reloads replace Pipeline-added properties; retain the same bounds here. + properties { + disableConcurrentBuilds() + buildDiscarder { + strategy { + logRotator { + daysToKeepStr('14') + numToKeepStr('8') + artifactDaysToKeepStr('-1') + artifactNumToKeepStr('4') + } + } + } + } description('Isolated installer userspace contracts on Atlas. Mapped disposable root, private network/PID/mounts; no host devices or deployment. Probe-only runs are not installer passes.') parameters { stringParam('EXPECTED_SOURCE_REVISION', '', 'Exact reviewed Lesavka source commit.')