2

終了すると(ビルド後のアクション)パラメーター化されたビルドをトリガーするジョブがあります(ジョブA)

トリガーされるビルドは、JOB_NAMEの値にfooという文字列パラメーターを設定します

「ジョブA」には、プロジェクト名を渡す変数(%foo%)に設定した場合に、「別のプロジェクトからアーティファクトをコピーする」ためのビルドステップがあります。

%foo%が正しい値を取得していることを確認できますが、ビルドステップを実行すると、変数の置換に失敗します

これは、アーティファクトコピーのプロジェクトが見つかりませんというエラーメッセージです:%foo%

別のプロジェクトからアーティファクトをコピーするためにプロジェクト名を動的に渡す方法である私の問題を解決するための代替案を探しています

4

3 に答える 3

4

アーティファクトのコピービルドステップのヘルプを確認しましたか?[プロジェクト名]フィールドの横にある疑問符をクリックすると、次のテキストが表示されます。

アーティファクトをコピーするためのソースプロジェクトの名前。$ PARAMなどのビルドパラメーターへの参照が含まれる場合があります(パラメーターを使用する場合、認証されたすべてのユーザーがソースプロジェクトにアクセスできる必要があります。これにより、パラメーターを使用してプライベートジョブの成果物にアクセスできなくなります)

したがって、$fooの代わりに試す必要があり%foo%ます。

于 2012-07-24T21:24:15.927 に答える
2

同様の問題がありました。

@stiが引用したプロジェクト名の「疑問符のテキスト」はその間に変更され、Mavenモジュールの情報のみが表示されます。

私が受け取ったエラーメッセージ:

アーティファクトコピーのプロジェクトが見つかりません:XYZ

これは、プロジェクト名または権限設定が正しくないことが原因である可能性があります。ジョブ構成のプロジェクト名のヘルプを参照してください。

権限が不足していることについてのヒントが得られますが、把握または理解するのは難しい場合があります(どのようなプロジェクト権限ですか?)。

だから私には何が欠けていたのですか?

アーティファクトをコピーする「ソース」-ジョブ/プロジェクトに移動し、それを確認します

Permission to Copy Artifact

INTOをコピーするジョブに正しく設定されています。(または*のようなワイルドカードに設定します)。

于 2014-09-11T20:49:07.350 に答える
0

jenkins-job-builderを使用している場合は、次のように必要な権限を設定できます。

- job:
    name: project-to-copy-from
    properties:
    - copyartifact:
        projects: "*"

copyartifact次に、次のように使用できます。

- job:
    name: project-to-copy-to
    builders:
    - copyartifact:
        project: project-to-copy-from
        which-build: last-successful

http://docs.openstack.org/infra/jenkins-job-builder/properties.html#properties.copyartifact

于 2015-08-19T00:13:41.627 に答える