mirror of
https://github.com/openshift/installer.git
synced 2026-02-05 06:46:36 +01:00
61 lines
2.1 KiB
Python
61 lines
2.1 KiB
Python
def GenerateConfig(context):
|
|
|
|
resources = [{
|
|
'name': context.properties['infra_id'] + '-bootstrap-public-ip',
|
|
'type': 'compute.v1.address',
|
|
'properties': {
|
|
'region': context.properties['region']
|
|
}
|
|
}, {
|
|
'name': context.properties['infra_id'] + '-bootstrap',
|
|
'type': 'compute.v1.instance',
|
|
'properties': {
|
|
'disks': [{
|
|
'autoDelete': True,
|
|
'boot': True,
|
|
'initializeParams': {
|
|
'diskSizeGb': context.properties['root_volume_size'],
|
|
'sourceImage': context.properties['image']
|
|
}
|
|
}],
|
|
'machineType': 'zones/' + context.properties['zone'] + '/machineTypes/' + context.properties['machine_type'],
|
|
'metadata': {
|
|
'items': [{
|
|
'key': 'user-data',
|
|
'value': '{"ignition":{"config":{"replace":{"source":"' + context.properties['bootstrap_ign'] + '"}},"version":"3.2.0"}}',
|
|
}]
|
|
},
|
|
'networkInterfaces': [{
|
|
'subnetwork': context.properties['control_subnet'],
|
|
'accessConfigs': [{
|
|
'natIP': '$(ref.' + context.properties['infra_id'] + '-bootstrap-public-ip.address)'
|
|
}]
|
|
}],
|
|
'tags': {
|
|
'items': [
|
|
context.properties['infra_id'] + '-master',
|
|
context.properties['infra_id'] + '-bootstrap'
|
|
]
|
|
},
|
|
'zone': context.properties['zone']
|
|
}
|
|
}, {
|
|
'name': context.properties['infra_id'] + '-bootstrap-ig',
|
|
'type': 'compute.v1.instanceGroup',
|
|
'properties': {
|
|
'namedPorts': [
|
|
{
|
|
'name': 'ignition',
|
|
'port': 22623
|
|
}, {
|
|
'name': 'https',
|
|
'port': 6443
|
|
}
|
|
],
|
|
'network': context.properties['cluster_network'],
|
|
'zone': context.properties['zone']
|
|
}
|
|
}]
|
|
|
|
return {'resources': resources}
|