4.2. YAML ファイルとしてのテンプレートの作成


Template オブジェクトを YAML ファイルとして定義することでテンプレートを作成できます。

Template オブジェクトは、テンプレートとそのメタデータを記述します。また、必要な入力変数と、スキャフォールディングサービスによって実行されるアクションのリストも含まれています。

Template オブジェクトの例

apiVersion: scaffolder.backstage.io/v1beta3
kind: Template
metadata:
  name: template-name 1
  title: Example template 2
  description: An example template for v1beta3 scaffolder. 3
spec:
  owner: backstage/techdocs-core 4
  type: service 5
  parameters: 6
    - title: Fill in some steps
      required:
        - name
      properties:
        name:
          title: Name
          type: string
          description: Unique name of the component
        owner:
          title: Owner
          type: string
          description: Owner of the component
    - title: Choose a location
      required:
        - repoUrl
      properties:
        repoUrl:
          title: Repository Location
          type: string
  steps: 7
    - id: fetch-base
      name: Fetch Base
      action: fetch:template
      # ...
  output: 8
    links:
      - title: Repository 9
        url: ${{ steps['publish'].output.remoteUrl }}
      - title: Open in catalog 10
        icon: catalog
        entityRef: ${{ steps['register'].output.entityRef }}
# ...

1
テンプレートの名前を指定します。
2
テンプレートのタイトルを指定します。これは、Create…​ ビューのテンプレートタイルに表示されるタイトルです。
3
テンプレートの説明を入力します。これは、Create…​ ビューのテンプレートタイルに表示される説明です。
4
テンプレートの所有権を指定します。owner フィールドは、システムまたは組織内のテンプレートの管理または監視を行うユーザーに関する情報を提供します。上記の例では、owner フィールドは backstage/techdocs-core に設定されています。これは、このテンプレートが backstage namespace の techdocs-core プロジェクトに属していることを意味します。
5
コンポーネントタイプを指定します。この必須フィールドには任意の文字列値を指定できますが、組織でこれらに対して適切な分類を確立する必要があります。Red Hat Developer Hub インスタンスはこのフィールドを読み取り、その値に応じて異なる動作をする場合があります。たとえば、website タイプのコンポーネントは、Web サイト専用のツールを Red Hat Developer Hub インターフェイスに表示する場合があります。

このフィールドに共通する値は次のとおりです。

service
通常 API を公開するバックエンドサービス。
website
Web サイト
library
npm モジュールや Java ライブラリーなどのソフトウェアライブラリー。
6
parameters セクションを使用して、ユーザーが Red Hat Developer Hub コンソールでテンプレートを使用してコンポーネントを作成するときにフォームビューに表示されるユーザー入力のパラメーターを指定します。タイトルとプロパティーによって定義される各 parameters サブセクションにより、その定義を含む新しいフォームページが作成されます。
7
バックエンドで実行されるステップを指定するには、steps セクションを使用します。これらのステップは、一意のステップ ID、名前、およびアクションを使用して定義する必要があります。https://<rhdh_url>/create/actions URL にアクセスすると、Red Hat Developer Hub インスタンスで利用可能なアクションを表示できます。
8
output セクションを使用して、テンプレートの使用時に作成される出力データの構造を指定します。output セクション、特に links サブセクションには、テンプレートから作成されたコンポーネントにアクセスして操作するためにユーザーが利用できる貴重な参照と URL が提供されます。
9
生成されたコンポーネントに関連付けられたリポジトリーへの参照または URL を提供します。
10
さまざまなコンポーネントが表示されているカタログまたはディレクトリーで、生成されたコンポーネントを表示できるようにする参照または URL を提供します。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.