https://github.com/AdoptOpenJDK/openjdk-build/pull/2125#pullrequestreview-504661752での議論からスピンアウト
構成パラメーターを変更する場所は、ガイダンスを提供する必要があるものです。 物事は現在3つの場所の1つにあるので、FAQのこのセクションをまとめるときに私はそれに遭遇しました。 どちらを使用するかは、影響を受けたい人によって異なります。私には、過去にすでに混乱を招いていた変更をどこで行うべきかを明確にすることを避けてきました。 簡単な要約:
| 場所| 影響|
| --- | --- |
| groovyファイル(このPRによる)| jenkinsパイプラインを実行する場合のみ|
| プラットフォーム固有の構成スクリプト| build-farm / make-adopt-build-farm.sh (パイプラインを含む)を使用しているものは、マシンに固有のものである必要があります。
| build.sh | makejdk-any-platform.shを実行している
したがって、それらの最後の行をどのようにするかによって異なります。 ユーザーが可能な限り同じ構成オプションで養子縁組ビルドを複製できるようにする場合は、build.shに含める必要があると思いますが、ユーザーが自分でビルドするためにオプションにする場合は、jenkinsパイプラインを使用します悪い選択ではありません。 ただし、FAQを更新するなどして、プロジェクトの新しい人々が変更を加える必要があることを明確にする必要があります。
上記の3つの場所のそれぞれに物事を追加する必要がある場合の例を挙げて、各タイプをいつ使用するかについて説明する必要があります。
私は提案します:
freetype
alsa
ようなものがあり、そこにX11開発パスが定義されています(おそらくプラットフォームスクリプトにあるはずです)。 開発者がOpenJDKの構築方法に影響を与えるデフォルトの構成オプションのほとんどを複製できる特定の方法で一貫してadoptopenjdkを構築したい場合は、最大の影響を与えるために、ここ(またはそれから呼び出されるスクリプトの1つ)に含めることをお勧めしますビルドスクリプト全体に変更を加える場所を理解することもhttps://github.com/AdoptOpenJDK/openjdk-build/issues/957の一部ですが、この重要な問題を明確にするためにスコープを少し制限するためにこれを作成しています
また、ファイルをリポジトリ間で分割する問題が発生しました。これが役立つと思います...
私はそのように断片化することにあまり確信がありませんでしたが、どこに何を置くべきかを決定する必要があり、それを文書化することは簡単な最初のステップになります(まあ、決定することは良い最初のステップであり、それから文書化できます)
build.shスクリプトとgroovyスクリプトの両方で設定されたconfigureオプションは、プラットフォームスクリプトにマージする必要があります。その後、スクリプトをmakejdk-any-platform.shの下に移動する必要があると思います。 単一のフラグ(例:-use-default-config-args)を渡すとトリガーされるか、そのフラグを省略すると無効になります(したがって、スクリプトはユーザーの構成引数のみを使用します)。
これらのことは良い考えです:
build-jdkアクションを実装しようとしたとき、 readmeから開始し、makejdk-any-platform.shを使用してjdkをビルドしました。これは、プラットフォーム固有の構成が表示されないことを意味し
プラットフォーム固有の構成でファイルをbuild.shと同じレベルに移動して、jenkins、git-hubアクション、jdkをネイティブにビルドするユーザーなどを、ビルドシステム環境に関係なく使用できるかどうか疑問に思いました。それ? これらのプラットフォーム固有の構成はプラットフォーム固有であり、ジェンキンス固有ではないと思います。
Groovyスクリプトはjenkins固有のビルドスクリプトであり、個別のリポジトリに分割されますhttps://github.com/AdoptOpenJDK/openjdk-build/issues/1108?
Groovy jenkinsパラメーターは、 https: //github.com/AdoptOpenJDK/ci-jenkins-pipelines/pull/67を介してjenkinsリポジトリのREADME.mdで明確にされてい
私は今、この(openjdk-build)リポジトリのFAQを調整して、jenkins固有のパラメーターをhttps://github.com/AdoptOpenJDK/ci-jenkins-pipelines/pull/67で実行する必要があることを明確にするつもりです。およびグローバルパラメータは、それぞれプラットフォームファイルとbuild.sh
で実行する必要があります
https://github.com/AdoptOpenJDK/openjdk-build/pull/2518がマージされ、ドキュメントの変更が完了しました。 これは、プロジェクトに新しいパラメータを追加したい人を処理する必要があります。 この問題の最後の部分は、既存のパラメータと場所を調べ、現在の場所での適切性についてそれぞれを評価し、この評価に基づいて、別の場所に移動する必要があるかどうかを評価することです。 ただし、これは大変な作業であり、現在処理している優先度の高い複数のタスクを考慮すると、妥当な期間内にこのタスクを完了する時間はないでしょう。
そのため、割り当てを削除し、他の誰かに任せて既存のパラメータを再評価します。