使用 boto3 创建 AWS 资源组

creating AWS resource group using boto3

我想使用 boto3 创建 AWS 资源组。在资源组中,我想添加带有标签 "name":"Jenkins" 的 ec2 实例。以下是 boto3 文档中建议的语法。

response = client.create_group(
    Name='string',
    Description='string',
    ResourceQuery={
        'Type': 'TAG_FILTERS_1_0'|'CLOUDFORMATION_STACK_1_0',
        'Query': 'string'
    },
    Tags={
        'string': 'string'
    }
)

我阅读了文档,但我不明白我的情况是什么查询,也找不到任何使用 boto3 在线创建资源组的示例。在 ResourceQuery 字典中,我可以将 'Type' 用作 'TAG_FILTERS_1_0' 但不确定 'Query' 会是什么。如果我能得到创建资源组的示例说明,那就太好了。谢谢

更新 按照@Jarmod 的建议,我尝试了下面的代码

client = boto3.client('resource-groups', **conn_args)
    response = client.create_group(
        Name='JenkinsResource',
        Description='JenkinsResourceGrp',
        ResourceQuery={
            'Type': 'TAG_FILTERS_1_0',
            'Query': [{"Key": "name", "Values": "Jenkins"}]
        }

    )

我遇到了以下错误。

参数 ResourceQuery.Query 的类型无效,值:[{'Key': 'name', 'Values': 'Jenkins'}],类型: ,有效类型:

我能够让它与查询对象一起工作:

{
    'ResourceTypeFilters': ['AWS::AllSupported'],
    'TagFilters': [{
        'Values': ['Jenkins'],
        'Key': 'name'
    }]
}

然后因为它需要一个字符串而不是 json 对象,所以我做了一个 json.dumps(查询)。

我通过 Web 控制台生成它发现了这一点,然后查看 CloudTrail 日志以了解控制台做了什么:)