Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Risorse del modulo di riferimento nei CloudFormation modelli
Nei CloudFormation modelli, spesso è necessario impostare le proprietà di una risorsa in base al nome o alla proprietà di un'altra risorsa. Per ulteriori informazioni, consulta Risorse di riferimento.
Per fare riferimento a una risorsa contenuta in un modulo del CloudFormation modello, è necessario combinare due nomi logici:
-
Il nome logico che hai dato al modulo stesso quando lo hai incluso nel modello.
-
Il nome logico della risorsa specifica all'interno di quel modulo.
È possibile combinare questi due nomi logici con o senza utilizzare un punto (.) tra di loro. Ad esempio, se il nome logico del modulo è MyModule
e il nome logico della risorsa èMyBucket
, è possibile fare riferimento a tale risorsa come MyModule.MyBucket
oMyModuleMyBucket
.
Per trovare i nomi logici delle risorse all'interno di un modulo, è possibile consultare lo schema del modulo, disponibile nel CloudFormation registro o utilizzando il DescribeTypeoperazione. Lo schema elenca tutte le risorse e i relativi nomi logici che fanno parte del modulo.
Una volta ottenuto il nome logico completo, è possibile utilizzare CloudFormation funzioni come GetAtt
e accedere Ref
ai valori delle proprietà sulle risorse del modulo.
Ad esempio, avete un My::S3::SampleBucket::MODULE
modulo che contiene una AWS::S3::Bucket
risorsa con il nome logicoS3Bucket
. Per fare riferimento al nome di questo bucket utilizzando la Ref
funzione, combinate il nome del modulo nel modello (MyBucket
) con il nome logico della risorsa nel modulo (S3Bucket
). Il nome logico completo è MyBucket.S3Bucket
oMyBucketS3Bucket
.
Modello di esempio
Il modello di esempio seguente crea un bucket S3 utilizzando il My::S3::SampleBucket::MODULE
modulo. Inoltre, crea una SQS coda Amazon e ne imposta il nome in modo che sia lo stesso del nome del bucket del modulo. Inoltre, il modello restituisce l'Amazon Resource Name (ARN) del bucket S3 creato.
# Template that uses My::S3::SampleBucket::MODULE Parameters: BucketName: Description: Name for your sample bucket Type: String Resources: MyBucket: Type: My::S3::SampleBucket::MODULE Properties: BucketName: !Ref BucketName exampleQueue: Type: AWS::SQS::Queue Properties: QueueName: !Ref MyBucket.S3Bucket Outputs: BucketArn: Value: !GetAtt MyBucket.S3Bucket.Arn