リソースの使用
Oracle Cloud Stackテンプレートを編集し、リソースのパラメータと依存関係を構成します。
はじめには、「リソースとは」を参照してください。
基本的な構文
テンプレート・ファイルのresourcesノード内のリソースを定義します。 各ノードに対して、そのtypeを指定します。 例:
resources:
HRJavaApp:
type: jaasリソース・タイプのリストを参照してください。
リソース・ノード内にparametersノードを追加します。 利用可能なパラメータを特定するには、このタイプのクラウド・リソースのREST APIドキュメントを参照してください。 リソース・タイプのリストを参照してください。 たとえば、このendpointは、Oracle Java Cloud Serviceにサービス・インスタンスを作成するために使用されます。
resources:
HRJavaApp:
type: jaas
parameters:
adminUserName: myuser
clusterSize: 3このリソースのRESTエンドポイントのリクエスト・ペイロードでパラメータの階層がサポートされる場合は、これと同じ階層をテンプレート・ファイル内でモデル化します。 例:
parameters:
adminUserName: myuser
virtualMachine:
shape: oc3
volumeSize: 10G同様に、リクエスト・ペイロードで配列がサポートされる場合は、この配列をテンプレート・ファイル内でシーケンスとしてモデル化します 例:
parameters:
adminUserName: myuser
virtualMachines:
-
shape: oc3
volumeSize: 10G
-
shape: oc3
volumeSize: 20Gテンプレート・パラメータを取得
テンプレート・パラメータの値をリソースのパラメータに割り当てるには、GetParam関数を使用します。 例:
adminUserName: { "Fn::GetParam": userName }詳細は、「テンプレート・パラメータの使用」を参照してください。
リソース属性を取得
GetAtt関数を使用して、別のリソースのランタイム属性の値をこのリソースのパラメータに割り当てます。 リソース名と属性名をシーケンスとして入力します。 例:
adminUserName: { "Fn::GetAtt": [HRDatabase, userName] }その属性を識別するには、このタイプのクラウド・リソースのREST APIドキュメントを参照してください。 リソース・タイプのリストを参照してください。 たとえば、このendpointは、Oracle Java Cloud Serviceのサービス・インスタンスを表示するために使用されます。
詳細は、「属性の使用」を参照してください。
依存関係
オプションで、リソース・ノードにdepends_on属性を追加します。 これをparametersノードの後に配置します。 この属性は、このリソースが依存しているテンプレート内の1つ以上のリソースを識別するものです。 シーケンスとして値を入力します。
resources:
HRJavaApp:
type: jaas
parameters:
resource parameters here
depends_on:
- HRStorage
- HRDatabaseヒント:
YAMLのシーケンスは、[HRStorage,HRDatabase]のような配列としても表現できます。