0
私は、MavenプロジェクトのCICDのための宣言的なJenkinsパイプラインを書いています。私はJenkinsfile(宣言的)のスクリプトブロック内に環境変数を作成する方法
environment {
REL_VER = '0.1-alpha1'
DEV_VER = '0.1-SNAPSHOT'
}
など、そのよう
0.1-rc1
、
0.20-alpha1
、
0.15-beta2
としての形を取ることができる
REL_VER
という環境変数を設定し、私は
REL_VER
を分割し、シェルコマンドに
osgi_ver
という名前の最初の要素を渡す必要があります私は
steps
で実行します私はエラー
org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: Scripts not permitted to use staticMethod jenkins.model.Jenkins getInstance
を取得していますが
this post
stages {
stage('package') {
steps {
script {
def vars = Jenkins.instance.getGlobalNodeProperties()[0].getEnvVars()
def osgi_ver = vars['REL_VER'].tokenize('-')[0]
}
sh "echo ${osgi_ver}"
withMaven(
maven: 'maven-3.3.9',
mavenSettingsConfig: 'dist-maven-settings',
mavenLocalRepo: '.m2repo') {
sshagent (credentials: ['dist-serv']) {
sh "sed -i '/setSystemExtraPackages/s/.*/\t\t.setSystemExtraPackages(new String[]{\"com.xxx;version=${osgi_ver}\"}));/' DsgPluginTest.java"
の回答に基づいてJavaファイル内の単語を交換します
env varを操作し、作成されたvarを宣言型パイプラインの後のステップのパラメータとして送信する正しい方法は何ですか?