New utils script to generate new modules using templates

The script will create the module in plugins/modules, the README, test and
playbook files.

Usage: new_module [options] <module name> <author name>
       <author email address>

Create new ansible-freeipa module using templates.

Options:
  -m          Create module with member support
  -f          Force creation
  -h          Print this help

Example:

    utils/new_module -m permission "My Name" myname@some.email
This commit is contained in:
Thomas Woerner
2020-08-13 14:12:11 +02:00
parent 542e241440
commit 5fa81a437b
11 changed files with 1182 additions and 0 deletions

View File

@@ -0,0 +1,98 @@
---
- name: Test $name
hosts: ipaserver
become: true
tasks:
# CLEANUP TEST ITEMS
- name: Ensure $name NAME is absent
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
state: absent
# CREATE TEST ITEMS
# TESTS
- name: Ensure $name NAME is present
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
# Add needed parameters here
register: result
failed_when: not result.changed or result.failed
- name: Ensure $name NAME is present again
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
# Add needed parameters here
register: result
failed_when: result.changed or result.failed
- name: Ensure $name NAME member PARAMETER2 VALUE is present
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
PARAMETER2: VALUE
action: member
register: result
failed_when: not result.changed or result.failed
- name: Ensure $name NAME member PARAMETER2 VALUE is present again
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
PARAMETER2: VALUE
action: member
register: result
failed_when: result.changed or result.failed
- name: Ensure $name NAME member PARAMETER2 VALUE is absent
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
PARAMETER2: VALUE
action: member
state: absent
register: result
failed_when: not result.changed or result.failed
- name: Ensure $name NAME member PARAMETER2 VALUE is absent again
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
PARAMETER2: VALUE
action: member
state: absent
register: result
failed_when: result.changed or result.failed
# more tests here
- name: Ensure $name NAME is absent
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
state: absent
register: result
failed_when: not result.changed or result.failed
- name: Ensure $name NAME is absent again
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
state: absent
register: result
failed_when: result.changed or result.failed
# CLEANUP TEST ITEMS
- name: Ensure $name NAME is absent
ipa$name:
ipaadmin_password: SomeADMINpassword
name: NAME
state: absent