1
0
mirror of https://github.com/firstBitMarksistskaya/jenkins-lib.git synced 2025-02-12 14:57:15 +02:00

Сделал отдельный класс для конвертации из формата EDT

This commit is contained in:
kuzja086 2021-08-03 23:11:01 +05:00
parent 6cf6991c66
commit 2a666a10db
2 changed files with 62 additions and 0 deletions

View File

@ -0,0 +1,52 @@
package ru.pulsar.jenkins.library.steps
import ru.pulsar.jenkins.library.IStepExecutor
import ru.pulsar.jenkins.library.configuration.JobConfiguration
import ru.pulsar.jenkins.library.ioc.ContextRegistry
import ru.pulsar.jenkins.library.utils.Logger
class EdtBackTransform implements Serializable {
public static final String PROJECT_NAME = 'pb17' // TODO Брать из srcDir
public static final String WORKSPACE = 'build/edt-workspace'
public static final String CONFIGURATION_ZIP = 'build/cfgPath.zip'
public static final String CONFIGURATION_ZIP_STASH = 'cfgPath-zip'
private final JobConfiguration config;
EdtBackTransform(JobConfiguration config) {
this.config = config
}
def run() {
IStepExecutor steps = ContextRegistry.getContext().getStepExecutor()
Logger.printLocation()
if (!config.stageFlags.srcEDT) {
Logger.println("SRC is not EDT format. No transform is needed.")
return
}
def env = steps.env();
def workspaceDir = "$env.WORKSPACE/$WORKSPACE"
def configurationRoot = config.srcDir
steps.createDir(workspaceDir)
Logger.println("Конвертация исходников из формата EDT в формат Конфигуратора")
def ringCommand = "ring edt workspace export --configuration-files '$configurationRoot' --project-name $PROJECT_NAME --workspace-location '$workspaceDir'"
def ringOpts = ['RING_OPTS=-Dfile.encoding=UTF-8 -Dosgi.nl=ru -Duser.language=ru']
steps.withEnv(ringOpts) {
steps.cmd(ringCommand)
}
steps.zip(WORKSPACE, CONFIGURATION_ZIP)
steps.stash(CONFIGURATION_ZIP_STASH, CONFIGURATION_ZIP)
}
}

View File

@ -0,0 +1,10 @@
import ru.pulsar.jenkins.library.configuration.JobConfiguration
import ru.pulsar.jenkins.library.ioc.ContextRegistry
import ru.pulsar.jenkins.library.steps.EdtBackTransform
def call(JobConfiguration config) {
ContextRegistry.registerDefaultContext(this)
def edtBackTransform = new EdtBackTransform(config)
edtBackTransform.run()
}