diff --git a/lib/ansible/modules/cloud/packet/packet_device.py b/lib/ansible/modules/cloud/packet/packet_device.py index 7b67971580d..2d5ad0cd1a5 100644 --- a/lib/ansible/modules/cloud/packet/packet_device.py +++ b/lib/ansible/modules/cloud/packet/packet_device.py @@ -447,6 +447,11 @@ def create_single_device(module, packet_conn, hostname): locked = module.params.get('locked') ipxe_script_url = module.params.get('ipxe_script_url') always_pxe = module.params.get('always_pxe') + if operating_system != 'custom_ipxe': + for param in ('ipxe_script_url', 'always_pxe'): + if module.params.get(param): + raise Exception('%s paramater is not valid for non custom_ipxe operating_system.' % param) + device = packet_conn.create_device( project_id=project_id, hostname=hostname, @@ -609,8 +614,6 @@ def main(): ), required_one_of=[('device_ids', 'hostnames',)], mutually_exclusive=[ - ('always_pxe', 'operating_system'), - ('ipxe_script_url', 'operating_system'), ('hostnames', 'device_ids'), ('count', 'device_ids'), ('count_offset', 'device_ids'),