[解決済み] Jenkinsプロジェクトのアーティファクトとワークスペース
質問
これまで何年もjenkinsを使ってきましたが、自分でセットアップしたことはなく、今回新しい職場でセットアップしてみました。いくつかの質問と問題にぶつかりました。
ワークスペースのデフォルトの場所 - 最新のJenkinsでは、デフォルトのワークスペースがJenkinsの[projectName]workspaceにあり、ビルドごとに上書き(選択すれば消去)されるようです。Jenkinsjobs[projectName]↵builds[build_id]↵で、ビルドごとにワークスペースの状態を保存して、後で参照できるようにすればいいのでは?
project>Build_ID ページにワークスペースを表示する。 - これは、以前のビルドの各「ワークスペース」がここに表示されることを期待していたため、前述と同じです。現在私のセットアップでは、この個別ページには Git リビジョンとビルドのきっかけとなったリポジトリ変更以外は何も表示されません。コンソール出力と同様です。アーティファクトはどこにあるのでしょうか?使用されたこのビルドのワークスペースへのリンクはどこにあるのでしょうか?
ビルドにおけるアーティファクトのアーカイブ - アーティファクトを選択する際、フィルタが機能しないようです。私のビルドでは、ワークスペース内にアーティファクトを含むファイル構造が作成されます。これを保存したいのですが、アーティファクトフィルターはワークスペースから始まると言っています。そこで、'artifacts'と入れても何も保存されません(また、これはどこに保存されるのでしょうか)。また、'/artifacts' や 'artifacts/*' も試しています。
何かお手伝いいただけると幸いです。ありがとうございます!
解決方法は?
Jenkinsのいくつかの側面について混乱しているように見えますが...。私はあなたの質問は、基本的に以下のことに集約されると思います。
ワークスペースとビルドの違いは何ですか?
そこで、このテーマについて、いくつか考えてみました。
- ビルドは履歴データです。 ワークスペースがビルド/チェックアウト中に変更されるようなことは(通常)ありません。
- ビルドには、実行に関する情報(ステータス、ビルド番号、変更ログなど)と、アーカイブするように指示した成果物(ログ、テスト結果など)が含まれます。 ワークスペースのようなソースコードは含まれません。
-
ビルドは
Jenkins\jobs\[projectName]\builds\[build_id]\
ディレクトリに格納されます。 これはJenkinsが管理するディレクトリで、(通常は)このディレクトリの何かを変更する必要はありません。 しかし、ワークスペースはビルドのためのディレクトリであり、あなたはそれを使ってかなり多くのことを行うことができ、どこにでも置くことができます(それは、デフォルトのJenkins\jobs\[projectName]\workspace
ディレクトリを作成します。 - ワークスペースは、いつでもワイプできるようにすること。 復元するには、同じパラメータ/リビジョンでジョブをリビルドするだけです。ビルド後に何かを残す必要がある場合は、ビルドが完了する前にアーカイブするようにJenkinsに伝えてください。
- 状態全体を保存することに関しては、その必要はないと思います。 4で述べたように、問題のビルドと同じリビジョン/パラメータをキックオフすることで、同じビルドを再現できるはずです。 もし同じリビジョン/パラメータから元の状態に戻れないのであれば、デバッグが悪夢になるため、それは努力すべきことかもしれません :)
- ワークスペースはプロジェクトの一側面であり、ビルドではないので、そのページからワークスペースへのリンクがないのはそのためです。 繰り返しになりますが、ビルドは前回実行時のデータを保存しただけのものです。 プロジェクトはワークスペースを使用してビルドを行うので、そのページからワークスペースにアクセスすることができます。
-
成果物の保存方法に関して、保存したいファイル名を指定する必要があります。 もし、"artifacts"という名前のファイルを保存しようとしているのでなければ、他のものを使うべきでしょう。 次のようにするとどうでしょう。
**/*.log
をすべてのログファイルに適用するか、あるいは**/*.xml
すべての xml ファイルを対象とするか?
お役に立てれば幸いです。
関連
-
[解決済み】Jenkins:403 リクエストに有効なクラムが含まれていません。
-
[解決済み] jenkinsにおけるagentの意味は何ですか?
-
[解決済み] Jenkinsを手動で再起動する方法は?
-
[解決済み] Jenkinsでジョブをスケジュールするにはどうしたらいいですか?
-
[解決済み】JenkinsとTravis-CI。オープンソースプロジェクトに使うならどっち?[という質問をいただきました。]
-
[解決済み】サーバーを再起動せずに、Jenkins上で停止できないゾンビジョブを停止する方法は?
-
[解決済み] Jenkinsで既存のジョブをあるビューから別のビューに移動するにはどうすればよいですか?
-
[解決済み] JenkinsをあるPCから別のPCに移動させる方法
-
[解決済み] 複数のgitレポを同じJenkinsワークスペースにチェックアウトする
-
[解決済み] Jenkinsのアーティファクトをアーカイブする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Jenkins:403 リクエストに有効なクラムが含まれていません。
-
[解決済み] ジェンキンスはシャットダウンする
-
[解決済み] AnsibleとRundeckを連携させるのは良いアイデアですか、それともどちらか一方を使えば十分ですか?
-
Jenkins java.io.IOException。CreateProcess error=2, The system could not find the specified file.
-
Jenkins上級シリーズ - 16 JENKINSのもとで完結するANT BUILD.XMLファイル
-
jenkinsがシェルコマンドを実行すると、"Command not found "というプロンプトが表示されます。
-
jenkinsのパイプラインにgitコミットを実装する
-
[解決済み】Jenkinsでジョブをエクスポート/インポートする
-
[解決済み] GitHub Org Pluginでjenkins pipeline (jenkinsfile)から別のジョブを起動するには?
-
[解決済み] Jenkinsで既存のジョブをあるビューから別のビューに移動するにはどうすればよいですか?