Bazel は、特定の分野でのコラボレーションに焦点を当て、Bazel のオーナー、メンテナー、コントリビューター間のコミュニケーションと調整をサポートするために、特別関心グループ(SIG)をホストしています。このポリシーは bazelbuild
に適用されます。
SIG は公開で作業を行います。SIG の理想的なスコープは、明確に定義されたドメインを対象とし、参加者の大部分がコミュニティからであることです。SIG は、bazelbuild
のコミュニティ管理リポジトリ(言語ルールなど)に焦点を当てることも、Bazel リポジトリのコード領域(リモート実行など)に焦点を当てることもできます。
すべての SIG が同じレベルのエネルギー、スコープの広さ、ガバナンス モデルを持つわけではありませんが、関心グループが設立された場合に、参加して貢献する意欲のあるコミュニティ メンバーがいることを示す十分な証拠が必要です。参加する前に、グループの活動内容を確認し、SIG リーダーに連絡してください。メンバーシップ ポリシーは SIG ごとに異なります。
Bazel SIG の完全なリストをご覧ください。
目標とすべきでないこと: SIG が目指すべきでないこと
SIG は、共有作業でのコラボレーションを促進することを目的としています。したがって、SIG は次のようになります。
- サポート フォーラムではない: メーリング リストと SIG は同じものではありません
- すぐに必要ではない: プロジェクトの初期段階では、共有作業や共同編集者がいるかどうかはわからない場合があります。
- 無料の労働力ではない: 共同作業の成長と調整にはエネルギーが必要
Bazel オーナーは SIG の作成に慎重なアプローチを取ります。GitHub でプロジェクトを簡単に開始できるため、SIG を必要とせずにコラボレーションを実現できる方法が数多くあります。
SIG のライフサイクル
このセクションでは、SIG を作成する方法について説明します。
調査とコンサルテーション
新しい SIG グループを提案するには、まず以下に示すように承認の証拠を集めます。検討すべき方法としては、次のようなものがあります。
- グループが解決する明確に定義された問題または一連の問題
- メリットを受けるコミュニティ メンバーとのコンサルテーション、メリットとコミットメントの意欲の両方を評価する
- 既存のプロジェクトの場合、コントリビューターがトピックに関心を持っていることを示す問題と PR の証拠
- グループが達成すべき目標
- グループの実行に必要なリソース
SIG の必要性が自明であると思われる場合でも、グループの成功には調査とコンサルテーションが重要です。
新しいグループを作成する
新しいグループは、以下のプロセスに沿って設立する必要があります。特に、次のことを実証する必要があります。
- Bazel の明確な目的とメリット(サブプロジェクトまたはアプリケーション領域に関するもの)
- グループ リーダーを務める意思のある 2 人以上の投稿者、他の投稿者の存在、グループの需要を示す証拠
- 各グループは、一般公開されているメーリング リストを 1 つ以上使用する必要があります。SIG は、bazel-discuss などの公開リストのいずれかを再利用するか、@bazel.build のリストをリクエストするか、独自のリストを作成できます。
- SIG が最初に必要とするリソース(通常は、メーリング リストと定期的なビデオ通話)。
- SIG は、
bazelbuild/community
のディレクトリまたはbazelbuild
GitHub 組織の独自のリポジトリからドキュメントとファイルを提供できます。SIG は、bazelbuild
GitHub 組織外で作業を整理する場合、外部リソースにリンクできます。 - Bazel オーナーは SIG 申請を承認または拒否し、必要に応じて他の関係者と協議します。
プロセスの正式な部分に入る前に、product@bazel.build で Bazel プロダクト チームに相談してください。ほとんどの SIG では、承認前に会話と反復が必要です。
新しいグループの正式なリクエストは、bazelbuild/community
に PR として憲章を送信し、次のテンプレートに沿って PR のコメントにリクエストを含めることで行います。承認されると、グループの PR が統合され、必要なリソースが作成されます。
新しい SIG のテンプレート リクエスト
新しい SIG をリクエストするには、コミュニティ リポジトリのテンプレート(SIG-request-template.md)を使用します。
チャーター
グループを設立するには、憲章が必要であり、Bazel の行動規範を遵守する必要があります。グループのアーカイブは公開されます。メンバーシップは、承認なしで誰でも参加できるか、リクエストに応じてグループ管理者の承認を待つかのいずれかになります。
憲章で管理者を指名する必要があります。グループには、管理者だけでなく、Bazel プロダクト チームとの調整が必要な場合に連絡窓口となるリード(管理者と同一人物でも可)が少なくとも 1 人必要です。
グループの作成者は、グループのメーリング リストに憲章を投稿する必要があります。Bazel GitHub 組織のコミュニティ リポジトリには、このようなドキュメントとポリシーがアーカイブされています。グループが慣行や規則を進化させるにつれて、コミュニティ リポジトリの関連部分で憲章を更新する必要があります。
コラボレーションとインクルージョン
必須ではありませんが、グループは、会議を行うために、予定された電話会議またはチャット チャンネルを介したコラボレーションを利用することを選択する必要があります。このような会議はメーリング リストで告知し、会議のメモは後でメーリング リストに投稿する必要があります。定期的なミーティングは、SIG のアカウンタビリティと進捗状況の推進に役立ちます。
Bazel プロダクト チームのメンバーは、必要に応じてグループを積極的にモニタリングし、議論や行動を促すことがあります。
SIG を立ち上げる
必須アクティビティ:
- Bazel の一般的なディスカッション グループ(bazel-discuss、bazel-dev)に通知します。
オプションのアクティビティ:
- Bazel ブログのブログ投稿を作成する
SIG の健全性と終了
Bazel のオーナーは、SIG の健全性を確保するために最善を尽くします。Bazel のオーナーは、SIG の活動をより広範な Bazel コミュニティに知らせるため、SIG リードに SIG の活動について報告を求めることがあります。
SIG が有用な目的を果たさなくなった場合や、関心のあるコミュニティがなくなった場合は、アーカイブされて運用が停止されることがあります。Bazel プロダクト チームは、プロジェクト全体の健全性を維持するために、このような非アクティブな SIG をアーカイブする権利を留保します。ただし、これは望ましい結果ではありません。SIG は、有用な期間が終了したと判断した場合、解散することもあります。
注
このコンテンツは、Tensorflow の SIG プレイブックを基に修正したものです。