From 34dca070264b3a0753aa820a26630e5afd81587f Mon Sep 17 00:00:00 2001 From: Dima Date: Sat, 18 Jan 2025 19:18:48 +0300 Subject: [PATCH] fix options --- .../jenkins/library/steps/ZipInfobase.groovy | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/ru/pulsar/jenkins/library/steps/ZipInfobase.groovy b/src/ru/pulsar/jenkins/library/steps/ZipInfobase.groovy index 692c4f2..2f63f11 100644 --- a/src/ru/pulsar/jenkins/library/steps/ZipInfobase.groovy +++ b/src/ru/pulsar/jenkins/library/steps/ZipInfobase.groovy @@ -2,6 +2,7 @@ package ru.pulsar.jenkins.library.steps import hudson.model.Result import ru.pulsar.jenkins.library.IStepExecutor +import ru.pulsar.jenkins.library.configuration.ArchiveInfobaseOptions import ru.pulsar.jenkins.library.configuration.JobConfiguration import ru.pulsar.jenkins.library.ioc.ContextRegistry import ru.pulsar.jenkins.library.utils.Logger @@ -24,7 +25,7 @@ class ZipInfobase implements Serializable { def currentBuild = steps.currentBuild() def currentResult = Result.fromString(currentBuild.getCurrentResult()) - def archiveInfobaseOptions = options.archiveInfobase + def archiveInfobaseOptions = getArchiveInfobaseOptionsForStage(config, stage) def archiveInfobase = false if (archiveInfobaseOptions.onAlways @@ -38,4 +39,19 @@ class ZipInfobase implements Serializable { steps.zip('build/ib', '1Cv8.1CD', archiveName, archiveInfobase) steps.stash(archiveName, archiveName, false) } + + private static ArchiveInfobaseOptions getArchiveInfobaseOptionsForStage(JobConfiguration config, String stageName) { + + def defaultOptions = new ArchiveInfobaseOptions() + if (!stageName) { + return defaultOptions + } + + try { + return config."${stageName}Options".archiveInfobase + } catch(Exception e) { + Logger.println(e.message) + return defaultOptions + } + } }