Objetos de solicitação de recursos personalizados
Este tópico descreve as propriedades do objeto de solicitação para um recurso personalizado do CloudFormation.
Para obter uma introdução aos recursos personalizados e como eles funcionam, consulte Recursos personalizados.
Propriedades de solicitação de desenvolvedor de modelos
O desenvolvedor do modelo usa o recurso CloudFormation, AWS::CloudFormation::CustomResource
, para especificar um recurso personalizado em um modelo.
Em AWS::CloudFormation::CustomResource
, todas as propriedades são definidas pelo custom resource provider. Há apenas uma propriedade necessária: ServiceToken
.
ServiceTimeout
-
O tempo máximo, em segundos, que pode transcorrer até a operação de um recurso personalizado atingir o tempo limite.
O valor deve ser um número inteiro de 1 a 3600. O valor padrão é de 3600 segundos (1 hora).
Obrigatório: não
Tipo: string
ServiceToken
-
O token de serviço, como o ARN de um tópico do Amazon SNS ou o ARN de uma função do Lambda. O token de serviço deve estar na mesma região que a pilha.
Obrigatório: Sim
Tipo: string
Todos os outros campos das propriedades de recursos são opcionais e são enviados, textualmente, para o custom resource provider no campo ResourceProperties
da solicitação. O provedor define os nomes e o conteúdo válido desses campos.
Campos de solicitação do Custom Resource Provider
Esses campos são enviados em solicitações JSON do CloudFormation para o provedor de recursos personalizados no tópico do SNS que o provedor configurou para essa finalidade.
RequestType
-
O tipo de solicitação é definido pela operação de pilha do CloudFormation (que pode ser create-stack, update-stack ou delete-stack) iniciada pelo desenvolvedor do modelo para a pilha que contém o recurso personalizado.
Deve ser:
Create
,Update
ouDelete
. Para obter mais informações, consulte Tipos de solicitação de recurso personalizado.Obrigatório: Sim
Tipo: string
ResponseURL
-
O URL de resposta identifica um bucket do S3 pré-assinado que recebe respostas do provedor de recursos personalizados para o AWS CloudFormation.
Obrigatório: Sim
Tipo: string
StackId
-
O nome do recurso da Amazon (ARN) que identifica a pilha que contém o recurso personalizado.
Combinar
StackId
comRequestId
forma um valor que é possível utilizar para identificar exclusivamente uma solicitação em um recurso personalizado específico.Obrigatório: Sim
Tipo: string
RequestId
-
Um ID exclusivo para a solicitação.
Combinar
StackId
comRequestId
forma um valor que é possível utilizar para identificar exclusivamente uma solicitação em um recurso personalizado específico.Obrigatório: Sim
Tipo: string
ResourceType
-
O tipo de recurso escolhido pelo desenvolvedor do modelo do recurso personalizado no modelo do CloudFormation. Os nomes de tipos de recursos personalizados podem incluir até 60 caracteres, incluindo alfanuméricos e os seguintes caracteres:
_@-
.Obrigatório: Sim
Tipo: string
LogicalResourceId
-
O nome do modelo escolhido pelo desenvolvedor (ID lógico) do recurso personalizado no modelo AWS CloudFormation. Ele é fornecido para facilitar a comunicação entre o provedor de recursos personalizados e o desenvolvedor de modelos.
Obrigatório: Sim
Tipo: string
PhysicalResourceId
Uma ID física definida por custom resource provider exclusiva para esse provedor.
O valor retornado para um
PhysicalResourceId
pode alterar as operações de atualização de recursos personalizados. Se o valor retornado for o mesmo, a atualização é considerada normal. Se o valor retornado for diferente, o AWS CloudFormation reconhece a atualização como uma substituição e envia uma solicitação de exclusão ao recurso antigo. Para ter mais informações, consulteAWS::CloudFormation::CustomResource
.Obrigatório: sempre enviado com solicitações
Update
eDelete
. Nunca comCreate
.Tipo: string
ResourceProperties
-
Esse campo apresenta o conteúdo do objeto
Properties
enviado pelo desenvolvedor de modelos. Seu conteúdo é definido pelo provedor de recursos personalizados.Obrigatório: não
Tipo: objeto JSON
OldResourceProperties
-
Usado apenas para solicitações
Update
. Contém as propriedades do recurso que foram declaradas antes da solicitação de atualização.Obrigatório: Sim
Tipo: objeto JSON