From b68c0f2ac590f46bd0133d70e57bd573143d7ea4 Mon Sep 17 00:00:00 2001 From: jenkins Date: Mon, 9 Nov 2026 07:52:09 -0600 Subject: [PATCH] jenkins: add bounded Lesavka coverage job --- services/jenkins/configmap-jcasc.yaml | 34 +++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/services/jenkins/configmap-jcasc.yaml b/services/jenkins/configmap-jcasc.yaml index f04c059a..5a823d4c 100644 --- a/services/jenkins/configmap-jcasc.yaml +++ b/services/jenkins/configmap-jcasc.yaml @@ -339,6 +339,40 @@ data: } } } + pipelineJob('lesavka-coverage') { + properties { + disableConcurrentBuilds() + buildDiscarder { + strategy { + logRotator { + daysToKeepStr('14') + numToKeepStr('8') + artifactDaysToKeepStr('-1') + artifactNumToKeepStr('4') + } + } + } + } + description('Exact-source instrumented software coverage on the mapped Atlas worker. Observe mode measures; it does not qualify coverage thresholds or hardware.') + parameters { + stringParam('EXPECTED_SOURCE_REVISION', '', 'Exact reviewed Lesavka source commit.') + booleanParam('ENFORCE_COVERAGE_GATE', false, 'Fail below the coverage contract; false measures without claiming threshold acceptance.') + } + definition { + cpsScm { + scm { + git { + remote { + url('https://scm.bstein.dev/bstein/lesavka.git') + credentials('gitea-pat') + } + branches('*/dev-phone-companion-updates') + } + } + scriptPath('docker/Jenkinsfile.coverage') + } + } + } pipelineJob('lesavka-installer-tests') { // Seed reloads replace Pipeline-added properties; retain the same bounds here. properties {