Omnibusに貢献する GitLab
一般的な機能強化タスク
よくあるメンテナンス作業
- ソフトウェアコンポーネントのアップグレード
- アップストリームソフトウェアのパッチ適用
- PostgreSQLバージョンの管理
- バンドルされているChefバージョンのアップグレード
- OSのサポート廃止と削除
- パッケージのインストールとアップグレード中の動作の追加と変更
機能拡張のビルドとテスト
エンハンスメントをレビューに提出
マージリクエストのガイドライン
新しい機能や、Omnibus GitLab のイシュー・トラッカーに登録されていないイシューに取り組む場合は、イシューを作成し、そのイシューに取り組むことを明記したほうがよいでしょう。また、他の人がそのイシューについて意見をくれるかもしれません。
\<issue number>-\<description>
という名前のブランチに変更を加えるのが望ましいです。そうすれば、マージリクエストによって指定したイシューが自動的にクローズされます。
よいマージリクエストは、適用可能性に基づいて、次のような構成要素を持つことが期待されます:
- なぜこの変更が必要なのかを説明する完全なマージリクエストの説明
- 機能/バグ修正の実装コード
- テストの記述で説明されているテスト
- 変更を説明する文書
- マージリクエストによってユーザー側の設定が変更される場合は、次のように更新してください。
gitlab.rb.template
- を更新してください。
- 設定 -> CI/CDに移動します。
- Runnerの設定を展開します。
- 共 有 ラン ナ ー が 有 効 に な っ て い な い 場 合 は 、「Enable shared Runners(共 有 ラン ナ ー を 有 効 に す る )」と い う ボ タ ン を ク リ ッ ク し ま す 。
テストの書き込み
内部クックブックの変更には仕様書も必要です。特定の機能/バグをテストすることとは別に、提出されたマージリクエストがより多くのテストを含んでいる場合、大いに感謝されるでしょう。これはテストカバレッジが開発者と共に成長することを保証するためです。
何か(セキュリティのイシューやリリースの妨げになるバグなど)の修正を急いでいるときは、仕様書の作成は省略できます。しかし、テストを実装するためのイシューを作成し、最初にコードを書いた人に割り当てなければなりません。
テストを実行するには、次のコマンドを実行します。実行する前にbundle install
を実行する必要があるかもしれません:
bundle exec rspec