Я указал экземпляр EC2 в моем шаблоне CloudFormation и хочу пометить его собственным InstanceId, например:
"Resources": {
"myInstance": {
...
"Tags": [
{ "Key": "instance.id", "Value": { "Ref": "myInstance" } },
...
]
}
}
Но попытка создать стек из этого шаблона генерирует AmazonCloudFormationException
: «Циклическая зависимость между ресурсами: [myInstance]»
Запустить экземпляры и пометить их с помощью API EC2 очень просто:
//this is C#, but that's not significant
var instance = ec2Client.RunInstances(...) ...;
var id = instance.InstanceId;
ec2Client.CreateTags(new CreateTagRequest
{
Resources = { id },
Tags = { new Tag { Key = "instance.id", Value = id } }
});
Этот подход естественным образом вытекает из того факта, что теги экземпляра не могут быть созданы как часть операции RunInstances
, поэтому все теги, а не только собственный идентификатор, должны применяться в последующей операции API.
Итак ... могу ли я сделать то же самое с помощью CloudFormation? Спасибо большое!