As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Solução de problemas AWS CloudFormation Guard
Se você encontrar problemas ao trabalhar com AWS CloudFormation Guard, consulte os tópicos desta seção.
Tópicos
A cláusula falha quando nenhum recurso do tipo selecionado está presente
Quando uma consulta usa um filtroResources.*[ Type == 'AWS::ApiGateway::RestApi'
]
, como, se não houver AWS::ApiGateway::RestApi
recursos na entrada, a cláusula é avaliada como. FAIL
%api_gws.Properties.EndpointConfiguration.Types[*] == "PRIVATE"
Para evitar esse resultado, atribua filtros às variáveis e use a verificação de when
condição.
let api_gws = Resources.*[ Type == 'AWS::ApiGateway::RestApi' ] when %api_gws !empty { ...}
O Guard não avalia o CloudFormation modelo com referências abreviadas Fn::GetAtt
O Guard não suporta as formas abreviadas de funções intrínsecas. Por exemplo, o uso de!Join
, !Sub
em um AWS CloudFormation modelo YAML formatado não é suportado. Em vez disso, use as formas expandidas das funções CloudFormation intrínsecas. Por exemplo, useFn::Join
, Fn::Sub
em CloudFormation modelos YAML formatados ao avaliá-los de acordo com as regras do Guard.
Para obter mais informações sobre funções intrínsecas, consulte a referência da função intrínseca no Guia do usuário.AWS CloudFormation
Tópicos gerais de solução de problemas
-
Verifique se os
string
literais não contêm cadeias de caracteres de escape incorporadas. Atualmente, o Guard não oferece suporte a cadeias de escape incorporadas emstring
literais. -
Verifique se suas
!=
comparações comparam tipos de dados compatíveis. Por exemplo, astring
e an nãoint
são tipos de dados compatíveis para comparação. Ao realizar a!=
comparação, se os valores forem incompatíveis, ocorrerá um erro internamente. Atualmente, o erro é suprimido e convertidofalse
para satisfazer a PartialEqcaracterística em Rust.