Omnibusに貢献する GitLab

一般的な機能強化タスク

よくあるメンテナンス作業

機能拡張のビルドとテスト

エンハンスメントをレビューに提出

マージリクエストのガイドライン

新しい機能や、Omnibus GitLab のイシュー・トラッカーに登録されていないイシューに取り組む場合は、イシューを作成し、そのイシューに取り組むことを明記したほうがよいでしょう。また、他の人がそのイシューについて意見をくれるかもしれません。

\<issue number>-\<description> という名前のブランチに変更を加えるのが望ましいです。そうすれば、マージリクエストによって指定したイシューが自動的にクローズされます。

よいマージリクエストは、適用可能性に基づいて、次のような構成要素を持つことが期待されます:

  1. なぜこの変更が必要なのかを説明する完全なマージリクエストの説明
  2. 機能/バグ修正の実装コード
  3. テストの記述で説明されているテスト
  4. 変更を説明する文書
  5. マージリクエストによってユーザー側の設定が変更される場合は、次のように更新してください。gitlab.rb.template
  6. 更新してください。
note
私たちの自動テストを実行するために、あなたのフォークで共有ランナーが有効になっていることを確認してください:
  1. 設定 -> CI/CDに移動します。
  2. Runnerの設定を展開します。
  3. 共 有 ラン ナ ー が 有 効 に な っ て い な い 場 合 は 、「Enable shared Runners(共 有 ラン ナ ー を 有 効 に す る )」と い う ボ タ ン を ク リ ッ ク し ま す 。

テストの書き込み

内部クックブックの変更には仕様書も必要です。特定の機能/バグをテストすることとは別に、提出されたマージリクエストがより多くのテストを含んでいる場合、大いに感謝されるでしょう。これはテストカバレッジが開発者と共に成長することを保証するためです。

何か(セキュリティのイシューやリリースの妨げになるバグなど)の修正を急いでいるときは、仕様書の作成は省略できます。しかし、テストを実装するためのイシューを作成し、最初にコードを書いた人に割り当てなければなりません

テストを実行するには、次のコマンドを実行します。実行する前にbundle install を実行する必要があるかもしれません:

bundle exec rspec