2016-10-07 17 views
2

私は、リリースチームが複数のプロジェクトからフルビルドの出力を格納するために使用できるもののアーティファクトリポジトリを探してきました。私が読んだところでは、アーティファクトリポジトリはビルドに必要なライブラリファイルの格納に主に使用されます。私の前提は、開発者とビルドサーバーがビルドプロセス中にまったく同じバイナリ依存関係を使用していることを保証することです。フルリリースを保存するためのアーティファクト・リポジトリの使用

いくつかの質問:

  • それがアーティファクトリポジトリ(フルリリース)、展開の準備ができて成果物を保管するための場所にプロジェクト全体のビルド出力を保存することは可能ですか?

  • これは一般的なプラクティスですか?

  • 最後のビルドから変更された内容を分析することは可能ですか?例:最後のリリースからどのアーティファクトが変更されているか確認できますか?

答えて

2

あなたの質問に対する短い答えは、はい、はい、ほとんどがはいです。

Artifactoryなどのバイナリマネージャは、依存関係の管理に使用されていますが、ビルド全体のホストにも使用されます。 Artifactoryでは、これは簡単にBuild Integration featuresによって達成できます。 JenkinsなどのCIサーバーを使用していない場合は、JFrog CLIを使用してビルドとそれに対応するBuild Infoをアップロードできます。

さらに、アナリティクスに関しては正確にはそうではありませんが、ArtifactoryではBuild Diffを実行し、ビルド間の変更を確認するオプションがあります。

P.S.私は助け

希望、

エラン私はJFrogのために働いています

+0

おかげで、それは常に、実際にこれらのツールに取り組むエンジニアからきちんと取得応答です。 – TacoMaster6000

+0

ビルド差分はどのように作成されていますか? CIインテグレーションの製品ですか、複数のプロジェクトをカプセル化するためにビルドのメタデータを手動で作成できますか?私が働いているところでは、「ビルド」はスプリントのもう一つの用語です。各スプリントの複数のチームは、バイナリ/アーティファクトをコンパイル/デプロイし、それらをそれぞれのサーバー/プロジェクトに統合します。複数のプロジェクトから複数の場所に出入りする複数の成果物を1つのビルドとしてグループ化できますか? – TacoMaster6000

1

あなたが必要としているもののためにSonatype Nexus woksを使用すると、あなたはどんな種類のバイナリを配備できるJavaアーティファクト(例:.ear、.jar、.warファイル) Orace BI Publisherまたは.exeバイナリのレポートを格納するために使用しています。

プロジェクト全体のビルド出力を、配置可能なアーティファクトを格納するアーティファクトリポジトリ(完全リリース)に保存することは可能ですか? はい、私が前に言ったように、あなたはどんな種類のバイナリを保存することもできます。

これは一般的なプラクティスですか? 私はそれが一般的な習慣であるかどうかわかりませんが、私の場合、それは私たちが秩序を維持するのを助けました。それがあなたのために働くかどうかだけを評価してください。

最後のビルドから変更された内容を分析することは可能ですか?例:最後のリリースからどのアーティファクトが変更されているか確認できますか?

Sonatype Nexusは、アーティファクト(またはバイナリ)ごとにバージョンを処理し、展開からすべての「履歴」を保存できるようにします。たとえば、同じバイナリを2回展開できないなどのセキュリティポリシーも処理できます。同じバージョンでは、この方法でアーティファクトがいつ変更されたか、日付とアーティファクトをアップロードした人物を確認することができます。それがどのように見えるか

これは、次のとおりです。応答のための

enter image description here

+0

興味深い。私たちの現在の問題は、現在(ある程度は)手動で展開されている大規模なシステムがあることです。これは、多くの異なるテクノロジーを持つ多くのプロジェクトを持つことの副産物です。私たちは統合チームのための「変更されたもの」リストを持つ方法が必要です(私たちの現在のシステムは非常に慣れています)。反復期間以降に何が変わったのかを確認する方法はありますか? – TacoMaster6000

+0

「変更されたものについて」あなたはコード内の意味ですか?それがポイントであれば、バイナリでは良いアイデアではないことを確認します。バイナリを生成してNexusにデプロイするパイプラインを使ってジェンキンを設定しました。使い方?あなたはSVN(またはgit)からチェックアウトを行い、パイプラインで実際にコミットコメントとどのファイルが変更されたかを見ることができます。これはNexusにバイナリ(コンパイル済みコード)としてデプロイされます。あなたの組織内でCI(Jenkinsとして)を使用しています –

+0

スプリント期間後にアーティファクトリポジトリで変更されたことを意味します。現在は、自動化されたビルド - デプロイメント統合が可能になるまで、手作業で統合を行う必要があります。現在、私たちは技術が異なる約20のプロジェクトを持っており、すべてが同じリリースサイクルのもとで生きています。統合チームの作業を簡素化するために、DevOpsに取り組んでいる最中に、最後のスプリントから要件を満たすために何が変更されたかを知るためのリストが必要です。 – TacoMaster6000

関連する問題