私は、マスタープロジェクトとincludeFlat
ディレクティブを使用した2つのその他のプロジェクトからなるGradleプロジェクトを持っています。これら3つのプロジェクトのそれぞれは、GitHubに関する独自のレポを持っています。それを構築するには、3つすべてのプロジェクトを共通のトップフォルダにチェックアウトし、次にcd
をマスタプロジェクトに入れてgradle build
を実行します。それは素晴らしい作品です!AWS CodePipelineを使用してJenkinsで複数のGradleプロジェクトを構築
私はAWS EB(Elastic Beanstalk)に結果のアプリケーションを展開する必要があります。これは、アーティファクトをローカルで生成してから手動で展開するときにもうまくいきます。私はプロセスを自動化したいので、this documentで説明されているように、CodePipeline + Jenkinsを使ってGradleを調整してみようとしています。
パイプに3つのソースを指定すると、私のプロジェクトが互いに重なり合って抽出され、ジェンキンスのワークスペースに混乱が生じてしまうという問題があります。私は何とか各プロジェクトをJenkinsのワークスペース内の独自のディレクトリに出力するように設定する必要があります。少なくともUIで行う方法はありません。(少なくともUIでは)
もちろん、私はどうかしてgradle build
を実行するためにマスターディレクトリにcd
を必要とし、やり直す方法がわかりません。
PS @Philの素晴らしい提案は残念ですが、CodePipeline does not currently support Gitサブモジュールまたはサブツリー
gitサブモジュールのようなものを使用できませんか? https://git-scm.com/docs/gitsubmodules – Phil
私はフラットなプロジェクト構造を持つ方がはるかに好きですが、興味深いアイデア – Bostone
しかし、あなたはすでに各プロジェクトごとに別々のレポを持っていませんか?サブモジュールとしてそれらをすべて自分のディレクトリに組み込んだ別の親プロジェクトを作成してビルドに使用することができます – Phil