我正在尝试根据此处1中给出的示例创建简单的VM。 我想将自定义服务帐户2添加到此VM。 我的配置看起来像这样
def GenerateConfig(context):
"""Create instance with disks."""
resources = [{
'type': 'compute.v1.instance',
'name': 'vm-' + context.env['deployment'],
'properties': {
'zone': context.properties['zone'],
'disks': [{
'deviceName': 'boot',
'type': 'PERSISTENT',
'boot': True,
'autoDelete': True,
'initializeParams': {
'diskName': 'disk-' + context.env['deployment'],
}
}],
'networkInterfaces': [{
'network': '...',
'subnetwork': '...',
'no-address': True,
}],
'tags':{
'items': [context.env['deployment']]
},
'service-account': ''.join(['custom-compute@',
context.env['project'],
'.iam.gserviceaccount.com']),
'scopes': ['https://www.googleapis.com/auth/devstorage.read_only',
'https://www.googleapis.com/auth/logging.write',
'https://www.googleapis.com/auth/monitoring.write',
'https://www.googleapis.com/auth/trace.append']
}
}]
return {'resources': resources}
我能够成功创建部署。但是,当我描述新创建的实例时,它没有与vm相关联的任何“服务帐户”。
我找不到任何将服务帐户添加到Deployment Manager模板的示例。我也尝试使用“serviceAccount”键而不是“service-account”而没有任何成功。 有谁知道我错过了什么?
答案 0 :(得分:1)
我找到了引用DM reference docs。 所需的更改是
'serviceAccounts': [{
'email': '....',
'scopes': '...'
}]