第4章 ソフトウェアテンプレートについて
Red Hat Developer Hub のソフトウェアテンプレートは、ソフトウェアコンポーネントを効率的に作成し、Git などのさまざまなバージョン管理リポジトリーに公開する方法を提供します。ソフトウェアテンプレートは、プラットフォームエンジニアが Red Hat Developer Hub で作成および管理します。
4.1. Red Hat Developer Hub でのソフトウェアテンプレートのバージョン管理 リンクのコピーリンクがクリップボードにコピーされました!
プラットフォーム管理者として、Scaffolder バックエンドモジュール内の既存のカスタムアクション catalog:scaffolded-from および catalog:template:version を使用して、ソフトウェアテンプレートのバージョン管理を行うことができます。これらのカスタムアクションを使用することで、Scaffolder テンプレートのバージョンと、そこから作成されたエンティティーの対応するバージョンを追跡でき、ライフサイクル管理が向上します。
前提条件
- Red Hat Developer Hub に対する管理者権限を持っている。
Backstageまたはmy-rhdh-app-configファイルで、以下の動的プラグインが有効になっています。-
backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic -
backstage-plugin-notifications -
backstage-plugin-notifications-backend-dynamic
-
手順
ソフトウェアテンプレートの yaml ファイルにバージョン管理を追加するには、次の手順を実行します。
RHDH の
my-rhdh-app-configファイルまたは Backstage カスタムリソース (CR) で、必要なプラグインが有効になっていることを確認してください。global: dynamic: plugins: - package: ./dynamic-plugins/dist/backstage-community-plugin-catalog-backend-module-scaffolder-relation-processor-dynamic disabled: false - package: ./dynamic-plugins/dist/backstage-plugin-notifications disabled: false - package: ./dynamic-plugins/dist/backstage-plugin-notifications-backend-dynamic disabled: false- 更新する必要があるソフトウェアテンプレートを変更します。
次のタスクのうち、どちらか一方または両方を完了します。
-
テンプレートにアノテーションを含める: テンプレートのメタデータに
backstage.io/template-versionアノテーションを追加します。このアノテーションが存在する場合、カタログエンティティーに自動的にアノテーションが付けられ、デフォルトのバージョン値が表示されます。 - アノテーションをアクションへの入力として渡す: この方法はテンプレート自体のアノテーションよりも優先され、テンプレートを実行するユーザーがバージョンを指定できます。
# ... - id: version-templateRef name: Append the version of this template to the entityRef action: catalog:template:version input: annotations: backstage.io/template-version: ${{ parameters.version }} # ...-
テンプレートにアノテーションを含める: テンプレートのメタデータに
検証
- 更新されたソフトウェアテンプレートを使用してカタログコンポーネントを作成します。このステップでは、Backstage に新しいコンポーネントを作成し、必要に応じてファイルを外部リポジトリー (GitHub、GitLab など) にプッシュします。
Catalog UI でコンポーネントを確認します。
- Catalog ページで、新しく作成したカタログコンポーネントを見つけます。
-
エンティティーに
backstage.io/template-versionアノテーションが存在することを確認します。INSPECT ENTITY を使用して、YAML Raw または JSON Raw ビューを選択すると、コンポーネント定義内のアノテーションを確認できます。
カタログコンポーネントを公開している場合のみ: リポジトリー内のコンポーネントファイルを確認します。
- UI に VIEW SOURCE が表示される場合: VIEW SOURCE をクリックして、リポジトリーに保存されているコンポーネントファイルを開きます。
-
ファイルを手動で見つけて、
backstage.io/template-versionアノテーションが存在することを確認します。