Issue テンプレートとプルリクエスト テンプレートを作成する

このページでは、Secure Source Manager の問題テンプレートとプルリクエスト テンプレートを作成して構成する方法について説明します。

必要なロール

問題テンプレートと pull リクエスト テンプレートを操作するために必要な権限を取得するには、管理者に次の IAM ロールを付与するよう依頼してください。

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。

Secure Source Manager ロールの付与については、 IAM によるアクセス制御と ユーザーにインスタンスへのアクセス権を付与するをご覧ください。

テンプレートの概要

問題テンプレートと pull リクエスト テンプレートを使用すると、投稿者がリポジトリに提供する情報を標準化できます。問題テンプレートには、ユーザーが送信する問題のタイプと使用可能なテンプレート タイプに応じて選択できる事前定義オプションが用意されています。pull リクエスト テンプレートはすべての pull リクエストに自動的に適用され、リポジトリへの投稿の一貫性を確保します。

テンプレートは、リポジトリ内のファイルをマージする権限を持つユーザーであれば誰でも作成できます。

問題テンプレートを作成する

Secure Source Manager では、リポジトリ内の複数の場所にある Markdown ファイルを使用して問題テンプレートを定義できます。さまざまな目的で複数の問題テンプレートを作成できます。たとえば、バグの報告と機能リクエストの送信に別々のテンプレートを使用できます。

  1. 次の情報をこの形式で記述してテンプレートを作成します。

     ---
     name: TEMPLATE_NAME
     about: Insert description of template
     title: Placeholder title for the new issue when it is created
     ---
    
  2. 名前と説明を入力します。これらは必須で、[新しい問題] ページの UI で使用されます。

  3. 必要に応じて、新しい問題が作成されたときにプレースホルダ タイトルとして使用されるタイトルを含めることができます。

  4. 必要な資料の下に、必要な情報を提供するためにユーザーを支援する問題の説明に表示する情報を追加します。

  5. テンプレートを Markdown ファイルとして次のいずれかの場所に保存します。

    • /.securesourcemanager/ISSUE_TEMPLATES/
    • /.securesourcemanager/issue_templates/

デフォルトの問題テンプレート

Secure Source Manager では、単一のデフォルト テンプレートの定義もサポートされています。このテンプレートは、次のいずれかの場所に定義する必要があります。

  • /.securesourcemanager/ISSUE_TEMPLATE.md
  • /.securesourcemanager/issue_template.md

ユーザーが新しい問題を作成すると、Secure Source Manager は、テンプレートが使用可能な場合はテンプレートを選択するか、デフォルト テンプレートを選択するようにユーザーに求めます。デフォルト テンプレートが指定されていない場合、新しい問題には何も事前入力されません。

問題テンプレートの例

テンプレートの最初の 5 行は、次の例に示す規則に従う必要があります。その他の情報は、問題のタイプに合わせて Markdown でフォーマットできます。

---
name: Bug #Used as UI element for the button on the New Issues page
about: Use this template to submit a new bug #Used as description text on the New Issues page
title: [BUG]: <Describe issue> #Used as placeholder name for newly created issue
---
# Description

# Expected result

# Actual result

# Steps to reproduce
1.
2.

# Environment
-OS:
-Software version:
-Screenshots:

プルリクエスト テンプレートを作成する

  1. 次の情報をこの形式で記述してテンプレートを作成します。

     ---
     title: "[PR]: <Insert title>"
     ---
    
  2. 必要な資料の下に、必要な情報を提供するためにユーザーを支援する問題の説明に表示する情報を追加します。詳細については、次のセクションのテンプレートの例をご覧ください。

  3. テンプレートを Markdown ファイルとして、リポジトリ内の次のいずれかの場所に保存します。

    • /.securesourcemanager/PULL_REQUEST_TEMPLATE.md
    • /.securesourcemanager/pull_request_template.md

新しい pull リクエストを作成すると、Secure Source Manager は定義されたいずれかの場所にテンプレートが存在するかどうかを確認して読み込みます。テンプレートにタイトル 情報を含めた場合、新しい pull リクエストに自動的に入力され、ユーザーが従うべき定義済みの形式が提供されます。追加した情報は、送信ユーザーが更新する pull リクエストの説明に追加されます。

プルリクエスト テンプレートの例

テンプレートの最初の 3 行は、次の例に示す規則に従う必要があります。以降はすべてオプションであり、ユーザーが規則に沿ったプルリクエストを作成するのに役立ちます。

---
title: "[PR]: <Insert title>"
---
<!-- Thank you for your contribution! -->

<!-- Include if applicable: -->
Fixes: #nnn <!-- tracking issues that this PR will close -->
**Related**: _Relevant tracking issues, for context_
**Merge before/after**: _Dependent or prerequisite PRs_

**Description**
<!-- Describe your changes here. The more detail, the easier the review! -->

**User facing changes (remove if N/A)**
<!-- Describe any user facing changes this PR introduces. -->
<!-- "Before" and "After" sections work great - bonus points for screenshots! -->
<!-- Be sure all docs have been updated as well! -->

**Follow-up Work (remove if N/A)**
<!-- Mention any related follow up work to this PR. -->

次のステップ