Я пытаюсь написать JQ-фильтр для фильтрации определенных ресурсов из шаблона облачной информации AWS на основе свойств ресурса.
Например, при запуске из следующего (сокращенного) шаблона облачной информации:
{
"Resources": {
"vpc001": {
"Type": "AWS::EC2::VPC",
"Properties": {
"CidrBlock": "10.1.0.0/16",
"InstanceTenancy": "default",
"EnableDnsSupport": "true",
"EnableDnsHostnames": "true"
}
},
"ig001": {
"Type": "AWS::EC2::InternetGateway",
"Properties": {
"Tags": [
{
"Key": "Name",
"Value": "ig001"
}
]
}
}
}
}
Я хотел бы создать jq-фильтр, позволяющий мне отфильтровывать определенные ресурсы на основе (одного или нескольких) их полей свойств.
Например:
при фильтрации для Type = "AWS :: EC2 :: InternetGateway" результат должен быть
{
"Resources": {
"ig001": {
"Type": "AWS::EC2::InternetGateway",
"Properties": {
"Tags": [
{
"Key": "Name",
"Value": "ig001"
}
]
}
}
}
}
Дополнительным бонусом будет возможность фильтрации по комбинации значений, построенной по принципу «ИЛИ». Таким образом, фильтр для «AWS :: EC2 :: InternetGateway» ИЛИ «AWS :: EC2 :: VPC» должен выдавать исходный документ.
Приветствуются любые предложения или идеи.
Tx!