From da65700f5268545bbe10c5de03a3ef7e0ec414bf Mon Sep 17 00:00:00 2001 From: ivanovEV Date: Tue, 19 Mar 2024 16:04:51 +0300 Subject: [PATCH 1/4] =?UTF-8?q?=D0=9F=D0=BE=D0=BC=D0=B5=D0=BD=D1=8F=D0=BB?= =?UTF-8?q?=20=D0=BF=D0=BE=D1=80=D1=8F=D0=B4=D0=BE=D0=BA=20=D1=81=D1=82?= =?UTF-8?q?=D0=B5=D0=B9=D0=B4=D0=B6=D0=B5=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vars/pipeline1C.groovy | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/vars/pipeline1C.groovy b/vars/pipeline1C.groovy index f5d8ee8..f358a8c 100644 --- a/vars/pipeline1C.groovy +++ b/vars/pipeline1C.groovy @@ -106,6 +106,18 @@ void call() { } } + stage('Загрузка расширений в конфигурацию'){ + when { + beforeAgent true + expression { config.needLoadExtensions() } + } + steps { + timeout(time: config.timeoutOptions.loadExtensions, unit: TimeUnit.MINUTES) { + loadExtensions config + } + } + } + stage('Инициализация ИБ') { when { beforeAgent true @@ -119,17 +131,6 @@ void call() { } } - stage('Загрузка расширений в конфигурацию'){ - when { - beforeAgent true - expression { config.needLoadExtensions() } - } - steps { - timeout(time: config.timeoutOptions.loadExtensions, unit: TimeUnit.MINUTES) { - loadExtensions config - } - } - } stage('Архивация ИБ') { steps { From d11ff1be6d40c8c78075af3cd4125dd6b9382e0d Mon Sep 17 00:00:00 2001 From: ivanovEV Date: Wed, 20 Mar 2024 12:58:42 +0300 Subject: [PATCH 2/4] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=20=D1=84=D0=BE=D1=82=D0=BE=20=D0=B2=20=D1=80=D0=B8=D0=B4=D0=BC?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3faa810..de1f1a9 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,7 @@ pipeline1C() ## Внешний вид пайплайна в интерфейсе Blue Ocean -![image](https://github.com/firstBitMarksistskaya/jenkins-lib/assets/80944823/e34a0112-2fe5-4116-92ac-8fcca08bba43) +![image](https://github.com/firstBitMarksistskaya/jenkins-lib/assets/80944823/a8d5bdff-3267-4744-a613-8c3d445b767f) ## Конфигурирование From a8ed25b5de43d7a572cdba4c6644827029b69222 Mon Sep 17 00:00:00 2001 From: Ivan Smirnov <52702497+ivanmolodec@users.noreply.github.com> Date: Thu, 2 May 2024 22:48:42 +0300 Subject: [PATCH 3/4] Bdd step unstable (#3) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Шаг BDD помечается как Unstable в случае ошибок в сценариях --- .../jenkins/library/IStepExecutor.groovy | 2 ++ .../jenkins/library/StepExecutor.groovy | 5 +++++ .../pulsar/jenkins/library/steps/Bdd.groovy | 22 +++++++++++++------ 3 files changed, 22 insertions(+), 7 deletions(-) diff --git a/src/ru/pulsar/jenkins/library/IStepExecutor.groovy b/src/ru/pulsar/jenkins/library/IStepExecutor.groovy index e9f9cb5..d56ddf5 100644 --- a/src/ru/pulsar/jenkins/library/IStepExecutor.groovy +++ b/src/ru/pulsar/jenkins/library/IStepExecutor.groovy @@ -70,6 +70,8 @@ interface IStepExecutor { def unstash(String name) + def unstable(String message) + def zip(String dir, String zipFile) def zip(String dir, String zipFile, String glob) diff --git a/src/ru/pulsar/jenkins/library/StepExecutor.groovy b/src/ru/pulsar/jenkins/library/StepExecutor.groovy index e8ffe04..fb8c212 100644 --- a/src/ru/pulsar/jenkins/library/StepExecutor.groovy +++ b/src/ru/pulsar/jenkins/library/StepExecutor.groovy @@ -154,6 +154,11 @@ class StepExecutor implements IStepExecutor { steps.unstash name } + @Override + def unstable(String message) { + steps.unstable message + } + @Override def zip(String dir, String zipFile, String glob = '') { steps.zip dir: dir, zipFile: zipFile, glob: glob, overwrite: true diff --git a/src/ru/pulsar/jenkins/library/steps/Bdd.groovy b/src/ru/pulsar/jenkins/library/steps/Bdd.groovy index 454b4c4..b68c807 100644 --- a/src/ru/pulsar/jenkins/library/steps/Bdd.groovy +++ b/src/ru/pulsar/jenkins/library/steps/Bdd.groovy @@ -6,9 +6,11 @@ import ru.pulsar.jenkins.library.ioc.ContextRegistry import ru.pulsar.jenkins.library.utils.Logger import ru.pulsar.jenkins.library.utils.VRunner +import java.lang.reflect.Array + class Bdd implements Serializable { - private final JobConfiguration config; + private final JobConfiguration config Bdd(JobConfiguration config) { this.config = config @@ -29,13 +31,19 @@ class Bdd implements Serializable { steps.installLocalDependencies() steps.createDir('build/out') + List returnStatuses = [] + config.bddOptions.vrunnerSteps.each { + Logger.println("Шаг запуска сценариев командой ${it}") + String vrunnerPath = VRunner.getVRunnerPath() + returnStatuses.add(VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"", true) as Integer) + } - steps.catchError { - config.bddOptions.vrunnerSteps.each { - Logger.println("Шаг запуска сценариев командой ${it}") - String vrunnerPath = VRunner.getVRunnerPath(); - VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"") - } + if (Collections.max(returnStatuses) > 2) { + steps.error("Получен неожиданный/неверный результат работы. Возможно, работа 1С:Предприятие завершилась некорректно, или возникла ошибка при запуске") + } else if (returnStatuses.contains(1)) { + steps.unstable("Тестирование сценариев завершилось, но часть фич/сценариев упала") + } else { + Logger.println("Тестирование сценариев завершилось успешно") } } From f25f751afccf75a91b748462069e1482852a018a Mon Sep 17 00:00:00 2001 From: Ivan Smirnov Date: Mon, 6 May 2024 11:40:02 +0300 Subject: [PATCH 4/4] =?UTF-8?q?=D0=92=D0=BD=D0=B5=D1=81=D0=B5=D0=BD=D1=8B?= =?UTF-8?q?=20=D0=BF=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=BF=D0=BE=20=D1=80?= =?UTF-8?q?=D0=B5=D0=B2=D1=8C=D1=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ru/pulsar/jenkins/library/steps/Bdd.groovy | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/ru/pulsar/jenkins/library/steps/Bdd.groovy b/src/ru/pulsar/jenkins/library/steps/Bdd.groovy index b68c807..8bb41c2 100644 --- a/src/ru/pulsar/jenkins/library/steps/Bdd.groovy +++ b/src/ru/pulsar/jenkins/library/steps/Bdd.groovy @@ -6,8 +6,6 @@ import ru.pulsar.jenkins.library.ioc.ContextRegistry import ru.pulsar.jenkins.library.utils.Logger import ru.pulsar.jenkins.library.utils.VRunner -import java.lang.reflect.Array - class Bdd implements Serializable { private final JobConfiguration config @@ -29,13 +27,13 @@ class Bdd implements Serializable { List logosConfig = ["LOGOS_CONFIG=$config.logosConfig"] steps.withEnv(logosConfig) { steps.installLocalDependencies() - steps.createDir('build/out') - List returnStatuses = [] + List returnStatuses = [] config.bddOptions.vrunnerSteps.each { Logger.println("Шаг запуска сценариев командой ${it}") String vrunnerPath = VRunner.getVRunnerPath() - returnStatuses.add(VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"", true) as Integer) + Integer bddReturnStatus = VRunner.exec("$vrunnerPath ${it} --ibconnection \"/F./build/ib\"", true) + returnStatuses.add(bddReturnStatus) } if (Collections.max(returnStatuses) > 2) {