第5章 Red Hat Developer Hub の Tech Radar ページのカスタマイズ
Red Hat Developer Hub では、Helm チャートの動的プラグイン機能を使用しても、Tech Radar ページが有効になりません。
Home ページのカスタマイズと同様に、Tech Radar のベース URL に /developer-hub/tech-radar
プロキシーが含まれている必要があります。Tech Radar ページのデータは、次の方法を使用して提供できます。
ホストされている JSON ファイル、GitHub または GitLab を使用します。JSON ファイルのデータにアクセスするには、
app-config.yaml
ファイルに次のコードを追加します。proxy: endpoints: # Other Proxies # customize developer hub instance '/developer-hub': target: <DOMAIN_URL> # i.e https://raw.githubusercontent.com/ pathRewrite: '^/api/proxy/developer-hub/tech-radar': <path to json file> # i.e /janus-idp/backstage-showcase/main/packages/app/public/tech-radar/data-default.json '^/api/proxy/developer-hub': <path to json file> # i.e /janus-idp/backstage-showcase/main/packages/app/public/homepage/data.json changeOrigin: true secure: true # Change to "false" in case of using self hosted cluster with a self-signed certificate headers: <HEADER_KEY>: <HEADER_VALUE> # optional and can be passed as needed i.e Authorization can be passed for private GitHub repo and PRIVATE-TOKEN can be passed for private GitLab repo
注記tech-radar
とhomepage
のクイックアクセスプロキシーに使用されるpathRewrites
の間には重複が存在するため、tech-radar
の設定 (^api/proxy/developer-hub/tech-radar
) はhomepage
の設定 (^/api/proxy/developer-hub
) よりも前にある必要があります。Red Hat Developer Hub の Home ページをカスタマイズする方法の詳細は、4章Red Hat Developer Hub の Home ページのカスタマイズ を参照してください。
- API を使用して JSON 形式の Tech Radar のデータを提供する別のサービスを使用します。
前提条件
- Helm チャートを使用して Red Hat Developer Hub をインストールしている。詳細は、2章Red Hat Developer Hub のインストール を参照してください。
手順
次のコードを
app-config-rhdh.yaml
ファイルに追加します。proxy: endpoints: # Other Proxies '/developer-hub/tech-radar': target: ${TECHRADAR_DATA_URL} changeOrigin: true # Change to "false" in case of using self hosted cluster with a self-signed certificate secure: true
API 要求の呼び出しが JSON 形式で応答を返すことを確認します。
TECHRADAR_DATA_URL`
をhttp://<SERVICE_NAME>/tech-radar
と定義します (例:http://rhdh-customization-provider/tech-radar
)。注記TECHRADAR_DATA_URL
を定義するには、URL をrhdh-secrets
に追加するか、カスタム ConfigMap 内の URL 値を直接置き換えます。- Developer Hub Pod を削除して、変更を取り込みます。