私はJenkinsパイプラインジョブを使用しています。私の必要条件は、ジョブのすべてのコミットメッセージを取得し、Jenkinsパイプラインファイルから.ps1ファイルに渡し、次に.ps1ファイルからケーキファイルに渡すことです。ps1ファイルに文字列配列を渡すには?
文字列リストを使用してすべてのコミットメッセージを取得した後、それを配列に変換しています。
ここで、この配列値をJenkinsパイプラインファイルからps1ファイルに渡す必要があります。 私はJenkinsパイプラインファイルの文字列のように渡そうとしました。例外をスローします。誰も私に教えてくださいジェンキンスファイルから.ps1ファイルに配列の値を渡すことが可能ですか?
ジェンキンスファイルの内容:
bat 'powershell.exe -ExecutionPolicy ByPass -File build.ps1 -Script build.cake -Target build -arrayContent '+"${arrayContent}"
PS1ファイルの内容:
Invoke-Expression "& `"$CAKE_EXE`" `"$Script`" -target=`"$Target`" arrayContent=`"$arrayContent`" -verbosity=`"$Verbosity`" $UseMono $UseDryRun $UseExperimental $ScriptArgs"
私は.ps1というファイル内[string[]]$arrayContent = @()
として配列を宣言しています。
ケーキファイルの内容:
var arrayContent = Argument<string[]>("arrayContent");