テンプレートのインポートに関する問題
カスタム・テンプレートのOracle Cloud Stackへのインポートに関する問題を解決します。
YAML文書ではない
ローカル・マシンからYAMLファイルをアップロードするか、URLとしてYAMLファイルのロケーションを指定することで、テンプレートをインポートできます。
URLからテンプレートをアップロードするときにこのエラー・メッセージが表示されます:
Template import failed! Mapping values are not allowed here.あなたのURLは、HTMLではなく、YAML型のファイルに解決されていることを確認してください。 たとえば、テンプレートがGitHubにある場合は、そのRAW URLを入力します。
サポートされていないテンプレート・パラメータ・タイプ
テンプレートをインポートするとき、このエラー・メッセージが表示されます:
Template cannot use reserved parameter type Type一部のパラメータ・タイプは、Oracle定義のテンプレートでのみサポートされています。 Oracleでは、カスタム・テンプレートでこれらの予約済パラメータ・タイプをサポートしていません。 テンプレートを変更し、別のパラメータ・タイプを使用します。 「テンプレート・パラメータの使用」を参照してください。
シーケンスのインデントが無効です
テンプレートをインポートすると、次のようなエラー・メッセージが表示されます:
Fn::Join - within template expects 2 members in json array. However, a Fn::Join usage was found in template with 4 member(s)YAMLシーケンスは、次のいずれかの形式で表現できます:
[item1,item2,item3]- item1
- item2
- item3シーケンスをネストすることもできます。 例:
- item1
- item2
-
- item3a
- item3b同じシーケンスのメンバーには、先行する同じ空白が必要です。 たとえば、Join関数を使用する場合は、2つの引数を含むシーケンスを指定します。 このシーケンスの第2引数は別のシーケンスです:
Fn::Join:
- "\n"
-
- This is line 1
- This is line 2次のJoinの例は、空白またはインデントが関数の期待される構文と一致しないため、有効なYAMLではありません:
Fn::Join:
- "\n"
-
- This is
- not validテンプレートビルダーにリソース構成が表示されない
一部のOracle Cloudサービス用のプロビジョニングAPIは、後方互換性のためにこの古いペイロード形式をサポートしています。
parameters:
serviceParameters:
...
componentParameters:
...Oracle Cloud Stackは、リソースがこのペイロード形式を使用するテンプレートを引き続きサポートします。 ただし、Template Builderでは最新のAPIペイロードのみがサポートされているため、WebコンソールでTemplate Builderを使用してこれらのリソースを編集することはできません。
parameters:
...
components:
...リソースに対して非推奨のプロビジョニングAPIペイロードを使用するテンプレートを変更する場合は、次のいずれかのオプションから選択します。
-
Template Builderを使用しないでください。 テンプレートをオフラインで編集してから、Oracle Cloud Stackにインポートしてください。 「オフライン編集」を参照してください。
-
Template BuilderからテンプレートのYAMLソースを編集し、リソースを新しいペイロード形式に変換します。 「コンソールでの編集」を参照してください。