コントリビュート.

Learn DXPR BuilderExtendTooling

DXPR Builderの開発はGitHub上の github.com/dxpr/dxpr_builderで行われています。すべてのコントリビューションは、リポジトリの CONTRIBUTING.mdに記載されたワークフローに従います。

Gitワークフロー

  1. すべてのプルリクエストはGitHubのIssueにリンクしなければなりません
  2. ブランチの命名規則: person/target-branch/#issue-description (例: jur/3.x/#42-fix-carousel-autoplay)
  3. アトミックなコミットの作成には次のスタイルガイドに従います: alphagov Gitスタイルガイド
  4. プルリクエストには解決策の簡単な説明を含めます
  5. 変更はIssueの範囲内に収めます。無関係な フォーマット変更やリファクタリングは含めません

コードオーナー

@jjroelofsがコードオーナーです。レビューなしにプルリクエストをマージすることはできません。

コーディング規約

  • PHP: Drupalコーディング規約
  • JavaScript: ES6+のみ(新規コードではvarやjQueryは使用しません)。プロジェクト固有の例外を加えたAirbnb JavaScriptコーディング規約に従います
  • CSS: カスタムプロパティとトークンの命名についてはデザインシステムに従います
  • エレメントのshowedメソッドの変更には、更新後の dxpr_frontend.jsを含めます。コンテナの保存 ボタンをクリックしたときにエディターがブラウザーコンソールに出力する完全な出力から生成します。
  • 新機能にはQA Analyticsのカバレッジが必要です。

クローン後は最初にnpm installを実行します。Huskyの pre-commitフックがインストールされ、ステージされたファイルがリントされます。詳しくは テストをご覧ください。

E2Eテストの実行

テストはPRコメントのスラッシュコマンドで実行します。

コマンド 説明
/e2e BS5エディターと匿名ユーザーのスイート一式を実行します
/e2e groups=group-name 特定のテストグループを実行します
/e2e tests=ClassName 特定のテストクラスを実行します
/e2e-bs3 BS3エディタースイートを実行します
/e2eV2 DXPR CMSスタック上でBS5スイートを実行します
/e2e maven_ref=branch カスタムのdxpr_mavenブランチでテストします

ビルダーの変更にテストの変更が必要な場合、QAエンジニアが ブランチ上でdxpr_mavenを更新し、プルリクエスト上で/e2e maven_ref=<branch>を実行します。ビルダーのプルリクエストが先にマージされ、その後に dxpr_mavenのプルリクエストがマージされます。

レビュー依頼前の確認事項

  1. 変更を実装します
  2. 慎重にテストします
  3. クリーンアップとリファクタリングを行います
  4. 問題がないことを再テストで確認します
  5. きれいなgit履歴でコミットとプッシュを行います
  6. リンターチェックが通ることを確認します
  7. PRに/e2eとコメントしてリグレッションテストを実行します
  8. すべてのチェックが通ったらレビューを依頼します