Как добавить учетную запись службы в шаблон экземпляра с помощью диспетчера развертывания
Я пытаюсь создать простую виртуальную машину на основе приведенного здесь примера 1. Я хочу добавить настраиваемую учетную запись службы 2 к этой виртуальной машине. Мой конфиг выглядит примерно так
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}
Я могу успешно создать развертывание. Однако, когда я описываю только что созданный экземпляр, у него нет "учетной записи службы", связанной с виртуальной машиной.
Я не смог найти ни одного примера добавления учетной записи службы в шаблон администратора развертывания. Я также попытался использовать ключ "serviceAccount" вместо "service-account", но безуспешно. Кто-нибудь знает, чего мне не хватает?
1 ответ
Я нашел справочную документацию DM. Требуемые изменения были
'serviceAccounts': [{
'email': '....',
'scopes': '...'
}]