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à.
Aggiornamento
Quando lo sviluppatore del modello apporta modifiche alle proprietà di una risorsa personalizzata all'interno del modello e aggiorna lo stack, CloudFormation invia una richiesta al fornitore di risorse personalizzate con RequestType
set toUpdate
. Ciò significa che il codice di risorsa personalizzato non deve rilevare le modifiche nelle risorse perché sa che le sue proprietà sono cambiate in base al tipo di richiesta. Update
Per un'introduzione alle risorse personalizzate e al loro funzionamento, consultaCrea una logica di provisioning personalizzata con risorse personalizzate.
Richiesta
Le richieste di aggiornamento contengono i seguenti campi:
RequestType
-
Update
. RequestId
-
Un ID univoco per la richiesta.
ResponseURL
-
La risposta URL identifica un bucket S3 predefinito che riceve risposte dal fornitore di risorse personalizzato a. AWS CloudFormation
ResourceType
-
Il tipo di risorsa personalizzata nel modello scelto dallo sviluppatore del modello. CloudFormation I nomi dei tipi di risorsa personalizzata possono contenere fino a 60 caratteri e possono includere caratteri alfanumerici, oltre ai caratteri seguenti:
_@-
. Non puoi modificare il tipo durante un aggiornamento. LogicalResourceId
-
Il nome (ID logico) scelto dallo sviluppatore del modello della risorsa personalizzata nel modello AWS CloudFormation .
StackId
-
L'Amazon Resource Name (ARN) che identifica lo stack che contiene la risorsa personalizzata.
PhysicalResourceId
-
Un ID fisico custom resource provider-defined richiesto che è univoco per quel fornitore.
Il valore restituito per un
PhysicalResourceId
può modificare le operazioni personalizzate di aggiornamento delle risorse. Se il valore restituito è lo stesso, viene considerato un aggiornamento normale. Se il valore restituito è diverso, AWS CloudFormation riconosce l'aggiornamento come sostituto e invia una richiesta di eliminazione alla vecchia risorsa. Per ulteriori informazioni, consultaAWS::CloudFormation::CustomResource
. ResourceProperties
-
I nuovi valori delle proprietà delle risorse dichiarati dallo sviluppatore del modello nel CloudFormation modello aggiornato.
OldResourceProperties
-
I valori delle proprietà delle risorse precedentemente dichiarati dallo sviluppatore del modello nel CloudFormation modello.
Esempio
{
"RequestType" : "Update",
"RequestId" : "unique id for this update request",
"ResponseURL" : "pre-signed-url-for-update-response",
"ResourceType" : "Custom::MyCustomResourceType",
"LogicalResourceId" : "name of resource in template",
"StackId" : "arn:aws:cloudformation:us-west-2:123456789012:stack/mystack/5b918d10-cd98-11ea-90d5-0a9cd3354c10",
"PhysicalResourceId" : "custom resource provider-defined physical id",
"ResourceProperties" : {
"key1" : "new-string",
"key2" : [ "new-list" ],
"key3" : { "key4" : "new-map" }
},
"OldResourceProperties" : {
"key1" : "string",
"key2" : [ "list" ],
"key3" : { "key4" : "map" }
}
}
Risposte
Riuscito
Se il provider di risorse personalizzate è in grado di aggiornare correttamente la risorsa, CloudFormation si aspetta che lo stato venga impostato su SUCCESS
nella risposta.
Status
-
Deve essere
SUCCESS
. RequestId
-
Un ID univoco per la richiesta. Questo valore di risposta deve essere copiato parola per parola dalla richiesta.
LogicalResourceId
-
Il nome (ID logico) scelto dallo sviluppatore del modello della risorsa personalizzata nel modello AWS CloudFormation . Questo valore di risposta deve essere copiato parola per parola dalla richiesta.
StackId
-
L'Amazon Resource Name (ARN) che identifica lo stack che contiene la risorsa personalizzata. Questo valore di risposta deve essere copiato parola per parola dalla richiesta.
PhysicalResourceId
-
Questo valore deve essere un identificativo univoco per il fornitore di risorse personalizzate e può avere una dimensione massima di 1 KB. Il valore deve essere una stringa non vuota e deve essere identico per tutte le risposte per la stessa risorsa.
Il valore restituito per un
PhysicalResourceId
può modificare le operazioni personalizzate di aggiornamento delle risorse. Se il valore restituito è lo stesso, viene considerato un aggiornamento normale. Se il valore restituito è diverso, AWS CloudFormation riconosce l'aggiornamento come sostituto e invia una richiesta di eliminazione alla vecchia risorsa. Per ulteriori informazioni, consultaAWS::CloudFormation::CustomResource
. NoEcho
-
Facoltativo. Indica se nascondere o meno l'output della risorsa personalizzata quando viene recuperata utilizzando la funzione
Fn::GetAtt
. Se impostato sutrue
, tutti i valori restituiti sono mascherati da asterischi (*****), ad eccezione di quelli memorizzati nella sezione delMetadata
modello. AWS CloudFormation non trasforma, modifica o oscura le informazioni incluse nella sezione.Metadata
Il valore predefinito èfalse
.Per ulteriori informazioni sull'utilizzo per
NoEcho
mascherare informazioni riservate, consulta la procedura Non incorporare le credenziali nei modelli consigliata. Data
-
Facoltativo. Le coppie nome-valore definite dal provider di risorse personalizzate da inviare con la risposta. Puoi accedere ai valori forniti qui in base al nome nel modello con
Fn::GetAtt
.Importante
Se le coppie nome-valore contengono informazioni riservate, è necessario utilizzare il campo
NoEcho
per mascherare l'output della risorsa personalizzata. Altrimenti, i valori sono visibili attraverso APIs i valori delle proprietà della superficie (ad esempioDescribeStackEvents
).
Esempio
{
"Status" : "SUCCESS",
"RequestId" : "unique id for this update request (copied from request)",
"LogicalResourceId" : "name of resource in template (copied from request)",
"StackId" : "arn:aws:cloudformation:us-west-2:123456789012:stack/mystack/5b918d10-cd98-11ea-90d5-0a9cd3354c10 (copied from request)",
"PhysicalResourceId" : "custom resource provider-defined physical id",
"Data" : {
"keyThatCanBeUsedInGetAtt1" : "data for key 1",
"keyThatCanBeUsedInGetAtt2" : "data for key 2"
}
}
Non riuscito
Se la risorsa non può essere aggiornata con un nuovo set di proprietà, CloudFormation si aspetta che lo stato venga impostato suFAILED
, insieme a un motivo di errore nella risposta.
Status
-
Deve essere
FAILED
. Reason
-
Descrive il motivo di una risposta con esito negativo.
RequestId
-
Un ID univoco per la richiesta. Questo valore di risposta deve essere copiato parola per parola dalla richiesta.
LogicalResourceId
-
Il nome (ID logico) scelto dallo sviluppatore del modello della risorsa personalizzata nel modello AWS CloudFormation . Questo valore di risposta deve essere copiato parola per parola dalla richiesta.
StackId
-
L'Amazon Resource Name (ARN) che identifica lo stack che contiene la risorsa personalizzata. Questo valore di risposta deve essere copiato parola per parola dalla richiesta.
PhysicalResourceId
-
Questo valore deve essere un identificativo univoco per il fornitore di risorse personalizzate e può avere una dimensione massima di 1 KB. Il valore deve essere una stringa non vuota e deve essere identico per tutte le risposte per la stessa risorsa.
Il valore restituito per un
PhysicalResourceId
può modificare le operazioni personalizzate di aggiornamento delle risorse. Se il valore restituito è lo stesso, viene considerato un aggiornamento normale. Se il valore restituito è diverso, AWS CloudFormation riconosce l'aggiornamento come sostituto e invia una richiesta di eliminazione alla vecchia risorsa. Per ulteriori informazioni, consultaAWS::CloudFormation::CustomResource
.
Esempio
{
"Status" : "FAILED",
"Reason" : "Required failure reason string",
"RequestId" : "unique id for this update request (copied from request)",
"LogicalResourceId" : "name of resource in template (copied from request)",
"StackId" : "arn:aws:cloudformation:us-west-2:123456789012:stack/mystack/5b918d10-cd98-11ea-90d5-0a9cd3354c10 (copied from request)",
"PhysicalResourceId" : "custom resource provider-defined physical id"
}