1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2026-04-14 16:05:04 +00:00

Reformat everything.

This commit is contained in:
Felix Fontein 2025-11-01 12:08:41 +01:00
parent 3f2213791a
commit 340ff8586d
1008 changed files with 61301 additions and 58309 deletions

View file

@ -289,11 +289,48 @@ from ansible.module_utils.basic import AnsibleModule
# TODO: get this info from API
STATES = ['present', 'absent']
DATACENTERS = ['ams01', 'ams03', 'che01', 'dal01', 'dal05', 'dal06', 'dal09', 'dal10', 'dal12', 'dal13', 'fra02',
'fra04', 'fra05', 'hkg02', 'hou02', 'lon02', 'lon04', 'lon06', 'mel01', 'mex01', 'mil01', 'mon01',
'osl01', 'par01', 'sao01', 'sea01', 'seo01', 'sjc01', 'sjc03', 'sjc04', 'sng01', 'syd01', 'syd04',
'tok02', 'tor01', 'wdc01', 'wdc04', 'wdc06', 'wdc07']
STATES = ["present", "absent"]
DATACENTERS = [
"ams01",
"ams03",
"che01",
"dal01",
"dal05",
"dal06",
"dal09",
"dal10",
"dal12",
"dal13",
"fra02",
"fra04",
"fra05",
"hkg02",
"hou02",
"lon02",
"lon04",
"lon06",
"mel01",
"mex01",
"mil01",
"mon01",
"osl01",
"par01",
"sao01",
"sea01",
"seo01",
"sjc01",
"sjc03",
"sjc04",
"sng01",
"syd01",
"syd04",
"tok02",
"tor01",
"wdc01",
"wdc04",
"wdc06",
"wdc07",
]
CPU_SIZES = [1, 2, 4, 8, 16, 32, 56]
MEMORY_SIZES = [1024, 2048, 4096, 6144, 8192, 12288, 16384, 32768, 49152, 65536, 131072, 247808]
INITIALDISK_SIZES = [25, 100]
@ -303,52 +340,51 @@ NIC_SPEEDS = [10, 100, 1000]
def create_virtual_instance(module):
instances = vsManager.list_instances(
hostname=module.params.get('hostname'),
domain=module.params.get('domain'),
datacenter=module.params.get('datacenter')
hostname=module.params.get("hostname"),
domain=module.params.get("domain"),
datacenter=module.params.get("datacenter"),
)
if instances:
return False, None
# Check if OS or Image Template is provided (Can't be both, defaults to OS)
if module.params.get('os_code') is not None and module.params.get('os_code') != '':
module.params['image_id'] = ''
elif module.params.get('image_id') is not None and module.params.get('image_id') != '':
module.params['os_code'] = ''
module.params['disks'] = [] # Blank out disks since it will use the template
if module.params.get("os_code") is not None and module.params.get("os_code") != "":
module.params["image_id"] = ""
elif module.params.get("image_id") is not None and module.params.get("image_id") != "":
module.params["os_code"] = ""
module.params["disks"] = [] # Blank out disks since it will use the template
else:
return False, None
tags = module.params.get('tags')
tags = module.params.get("tags")
if isinstance(tags, list):
tags = ','.join(map(str, module.params.get('tags')))
tags = ",".join(map(str, module.params.get("tags")))
instance = vsManager.create_instance(
hostname=module.params.get('hostname'),
domain=module.params.get('domain'),
cpus=module.params.get('cpus'),
memory=module.params.get('memory'),
flavor=module.params.get('flavor'),
hourly=module.params.get('hourly'),
datacenter=module.params.get('datacenter'),
os_code=module.params.get('os_code'),
image_id=module.params.get('image_id'),
local_disk=module.params.get('local_disk'),
disks=module.params.get('disks'),
ssh_keys=module.params.get('ssh_keys'),
nic_speed=module.params.get('nic_speed'),
private=module.params.get('private'),
public_vlan=module.params.get('public_vlan'),
private_vlan=module.params.get('private_vlan'),
dedicated=module.params.get('dedicated'),
post_uri=module.params.get('post_uri'),
hostname=module.params.get("hostname"),
domain=module.params.get("domain"),
cpus=module.params.get("cpus"),
memory=module.params.get("memory"),
flavor=module.params.get("flavor"),
hourly=module.params.get("hourly"),
datacenter=module.params.get("datacenter"),
os_code=module.params.get("os_code"),
image_id=module.params.get("image_id"),
local_disk=module.params.get("local_disk"),
disks=module.params.get("disks"),
ssh_keys=module.params.get("ssh_keys"),
nic_speed=module.params.get("nic_speed"),
private=module.params.get("private"),
public_vlan=module.params.get("public_vlan"),
private_vlan=module.params.get("private_vlan"),
dedicated=module.params.get("dedicated"),
post_uri=module.params.get("post_uri"),
tags=tags,
)
if instance is not None and instance['id'] > 0:
if instance is not None and instance["id"] > 0:
return True, instance
else:
return False, None
@ -357,7 +393,7 @@ def create_virtual_instance(module):
def wait_for_instance(module, id):
instance = None
completed = False
wait_timeout = time.time() + module.params.get('wait_time')
wait_timeout = time.time() + module.params.get("wait_time")
while not completed and wait_timeout > time.time():
try:
completed = vsManager.wait_for_ready(id, 10, 2)
@ -371,19 +407,23 @@ def wait_for_instance(module, id):
def cancel_instance(module):
canceled = True
if module.params.get('instance_id') is None and (module.params.get('tags') or module.params.get('hostname') or module.params.get('domain')):
tags = module.params.get('tags')
if module.params.get("instance_id") is None and (
module.params.get("tags") or module.params.get("hostname") or module.params.get("domain")
):
tags = module.params.get("tags")
if isinstance(tags, str):
tags = [module.params.get('tags')]
instances = vsManager.list_instances(tags=tags, hostname=module.params.get('hostname'), domain=module.params.get('domain'))
tags = [module.params.get("tags")]
instances = vsManager.list_instances(
tags=tags, hostname=module.params.get("hostname"), domain=module.params.get("domain")
)
for instance in instances:
try:
vsManager.cancel_instance(instance['id'])
vsManager.cancel_instance(instance["id"])
except Exception:
canceled = False
elif module.params.get('instance_id') and module.params.get('instance_id') != 0:
elif module.params.get("instance_id") and module.params.get("instance_id") != 0:
try:
vsManager.cancel_instance(instance['id'])
vsManager.cancel_instance(instance["id"])
except Exception:
canceled = False
else:
@ -393,48 +433,47 @@ def cancel_instance(module):
def main():
module = AnsibleModule(
argument_spec=dict(
instance_id=dict(type='str'),
hostname=dict(type='str'),
domain=dict(type='str'),
datacenter=dict(type='str', choices=DATACENTERS),
tags=dict(type='str'),
hourly=dict(type='bool', default=True),
private=dict(type='bool', default=False),
dedicated=dict(type='bool', default=False),
local_disk=dict(type='bool', default=True),
cpus=dict(type='int', choices=CPU_SIZES),
memory=dict(type='int', choices=MEMORY_SIZES),
flavor=dict(type='str'),
disks=dict(type='list', elements='int', default=[25]),
os_code=dict(type='str'),
image_id=dict(type='str'),
nic_speed=dict(type='int', choices=NIC_SPEEDS),
public_vlan=dict(type='str'),
private_vlan=dict(type='str'),
ssh_keys=dict(type='list', elements='str', default=[], no_log=False),
post_uri=dict(type='str'),
state=dict(type='str', default='present', choices=STATES),
wait=dict(type='bool', default=True),
wait_time=dict(type='int', default=600),
instance_id=dict(type="str"),
hostname=dict(type="str"),
domain=dict(type="str"),
datacenter=dict(type="str", choices=DATACENTERS),
tags=dict(type="str"),
hourly=dict(type="bool", default=True),
private=dict(type="bool", default=False),
dedicated=dict(type="bool", default=False),
local_disk=dict(type="bool", default=True),
cpus=dict(type="int", choices=CPU_SIZES),
memory=dict(type="int", choices=MEMORY_SIZES),
flavor=dict(type="str"),
disks=dict(type="list", elements="int", default=[25]),
os_code=dict(type="str"),
image_id=dict(type="str"),
nic_speed=dict(type="int", choices=NIC_SPEEDS),
public_vlan=dict(type="str"),
private_vlan=dict(type="str"),
ssh_keys=dict(type="list", elements="str", default=[], no_log=False),
post_uri=dict(type="str"),
state=dict(type="str", default="present", choices=STATES),
wait=dict(type="bool", default=True),
wait_time=dict(type="int", default=600),
)
)
if not HAS_SL:
module.fail_json(msg='softlayer python library required for this module')
module.fail_json(msg="softlayer python library required for this module")
if module.params.get('state') == 'absent':
if module.params.get("state") == "absent":
(changed, instance) = cancel_instance(module)
elif module.params.get('state') == 'present':
elif module.params.get("state") == "present":
(changed, instance) = create_virtual_instance(module)
if module.params.get('wait') is True and instance:
(changed, instance) = wait_for_instance(module, instance['id'])
if module.params.get("wait") is True and instance:
(changed, instance) = wait_for_instance(module, instance["id"])
module.exit_json(changed=changed, instance=json.loads(json.dumps(instance, default=lambda o: o.__dict__)))
if __name__ == '__main__':
if __name__ == "__main__":
main()