構成ファイルを作成する
deploy.yml、vm-python-template.py、parameter.pyを作成します。
以下の内容をそれぞれのファイルに記述してください。
deploy.yml
imports:
- path: vm-python-template.py
- path: parameter.py
resources:
- name: python-template
type: parameter.py
vm-python-template.py
def GenerateConfig(context):
resources = [{
'name': context.properties['name'],
'type': 'compute.v1.instance',
'properties': {
'zone': context.properties['zone'],
'machineType': ''.join(['zones/',
context.properties['zone'], '/machineTypes/',
context.properties['machineType']]),
'disks': [{
'deviceName': 'boot',
'type': 'PERSISTENT',
'boot': True,
'autoDelete': True,
'initializeParams': {
'sourceImage': context.properties['sourceImage']
}
}],
'networkInterfaces': [{
'network': 'global/networks/default'
}]
}
}]
return {'resources': resources}
parameter.py
def GenerateConfig(unused_context):
resources = [{
'name': 'parameter',
'type': 'vm-python-template.py',
'properties': {
'name': 'demo-python-vm01',
'zone': 'us-west1-a',
'machineType': 'e2-micro',
'sourceImage': 'projects/debian-cloud/global/images/family/debian-11'
}
}]
return {'resources': resources}
デプロイメントを実行する
CloudShellで以下のコマンドを実行してください。
$ gcloud deployment-manager deployments create demo-python-deploy --config deploy.yml
インスタンスの作成を確認する
GCPコンソールでComputeEngineを表示してください。
デプロイメントを確認する
以下のコマンドを実行してください。
$ gcloud deployment-manager deployments list
デプロイメントを削除する
以下のコマンドを実行してください。
$ gcloud deployment-manager deployments delete demo-python-deploy --async