LoginSignup
0
0

Deployment ManagerでPythonを使ってデプロイする

Posted at

構成ファイルを作成する

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を表示してください。
スクリーンショット 2023-10-01 7.14.50.png

デプロイメントを確認する

以下のコマンドを実行してください。

$ gcloud deployment-manager deployments list

デプロイメントを削除する

以下のコマンドを実行してください。

$ gcloud deployment-manager deployments delete demo-python-deploy --async
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0