diff options
Diffstat (limited to 'ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile')
31 files changed, 464 insertions, 210 deletions
diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/converge.yml index 29ff66275..df421143f 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/converge.yml @@ -1,21 +1,32 @@ --- - name: Converge hosts: all + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'cifs_url') }}" + share_user: "{{ lookup('env', 'cifs_username') }}" + share_password: "{{ lookup('env', 'cifs_password') }}" + scp_file: "{{ lookup('env', 'cifs_filename') }}" gather_facts: false tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest + - name: "Importing SCP from CIFS with ALL components" ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'CIFS_URL') }}" - share_user: "{{ lookup('env', 'CIFS_USERNAME') }}" - share_password: "{{ lookup('env', 'CIFS_PASSWORD') }}" - scp_file: "{{ lookup('env', 'cifs_filename') }}" + <<: *share_input - name: Verifying Import SCP from CIFS with ALL components ansible.builtin.assert: diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/cifs_share/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/default/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/default/converge.yml index c0ae89edf..46f902d78 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/default/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/default/converge.yml @@ -7,14 +7,14 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: ['IDRAC'] share_parameters: - share_user: "{{ lookup('env', 'USERNAME') }}" - share_password: "{{ lookup('env', 'PASSWORD') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" scp_file: "{{ lookup('env', 'http_filename') }}" ignore_errors: true register: idrac_import_server_config_profile_status @@ -28,15 +28,15 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: ['IDRAC'] share_parameters: - share_name: "{{ lookup('env', 'HTTP_URL') }}" - share_user: "{{ lookup('env', 'USERNAME') }}" - share_password: "{{ lookup('env', 'PASSWORD') }}" + share_name: "{{ lookup('env', 'http_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" ignore_errors: true register: idrac_import_server_config_profile_status @@ -50,14 +50,14 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'CIFS_URL') }}" - share_user: "{{ lookup('env', 'CIFS_USERNAME') }}" - share_password: "{{ lookup('env', 'CIFS_PASSWORD') }}" + share_name: "{{ lookup('env', 'cifs_url') }}" + share_user: "{{ lookup('env', 'cifs_username') }}" + share_password: "{{ lookup('env', 'cifs_password') }}" scp_file: "invalid_file.xml" ignore_errors: true register: idrac_import_server_config_profile_status @@ -76,14 +76,14 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: share_name: "192.168.0.1:/cifsshare" - share_user: "{{ lookup('env', 'CIFS_USERNAME') }}" - share_password: "{{ lookup('env', 'CIFS_PASSWORD') }}" + share_user: "{{ lookup('env', 'cifs_username') }}" + share_password: "{{ lookup('env', 'cifs_password') }}" scp_file: "{{ lookup('env', 'cifs_filename') }}" ignore_errors: true register: idrac_import_server_config_profile_status @@ -99,13 +99,13 @@ name: "idrac_import_server_config_profile" vars: hostname: "randomHostname" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'CIFS_URL') }}" - share_user: "{{ lookup('env', 'CIFS_USERNAME') }}" - share_password: "{{ lookup('env', 'CIFS_PASSWORD') }}" + share_name: "{{ lookup('env', 'cifs_url') }}" + share_user: "{{ lookup('env', 'cifs_username') }}" + share_password: "{{ lookup('env', 'cifs_password') }}" scp_file: "{{ lookup('env', 'cifs_filename') }}" ignore_errors: true ignore_unreachable: true @@ -121,14 +121,14 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" username: "WrongUsername123" - password: "{{ lookup('env', 'PASSWORD') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'CIFS_URL') }}" - share_user: "{{ lookup('env', 'CIFS_USERNAME') }}" - share_password: "{{ lookup('env', 'CIFS_PASSWORD') }}" + share_name: "{{ lookup('env', 'cifs_url') }}" + share_user: "{{ lookup('env', 'cifs_username') }}" + share_password: "{{ lookup('env', 'cifs_password') }}" scp_file: "{{ lookup('env', 'cifs_filename') }}" ignore_errors: true ignore_unreachable: true @@ -143,14 +143,14 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" password: "WrongPassword@123" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'CIFS_URL') }}" - share_user: "{{ lookup('env', 'CIFS_USERNAME') }}" - share_password: "{{ lookup('env', 'CIFS_PASSWORD') }}" + share_name: "{{ lookup('env', 'cifs_url') }}" + share_user: "{{ lookup('env', 'cifs_username') }}" + share_password: "{{ lookup('env', 'cifs_password') }}" scp_file: "{{ lookup('env', 'cifs_filename') }}" ignore_errors: true ignore_unreachable: true @@ -165,15 +165,15 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: ['idrac'] share_parameters: - share_name: "{{ lookup('env', 'HTTP_URL') }}" - share_user: "{{ lookup('env', 'HTTP_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" + share_name: "{{ lookup('env', 'http_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" scp_file: "{{ lookup('env', 'http_filename') }}" ignore_errors: true register: idrac_import_server_config_profile_status @@ -188,15 +188,15 @@ # ansible.builtin.import_role: # name: "idrac_import_server_config_profile" # vars: - # hostname: "{{ lookup('env', 'HOSTNAME') }}" - # username: "{{ lookup('env', 'USERNAME') }}" - # password: "{{ lookup('env', 'PASSWORD') }}" + # hostname: "{{ lookup('env', 'IDRAC_IP') }}" + # username: "{{ lookup('env', 'IDRAC_USER') }}" + # password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" # validate_certs: false # target: ['IDRAC'] # share_parameters: - # share_name: "{{ lookup('env', 'HTTP_URL') }}" + # share_name: "{{ lookup('env', 'http_url') }}" # share_user: "WrongUsername123" - # share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" + # share_password: "{{ lookup('env', 'http_password') }}" # scp_file: "{{ lookup('env', 'http_filename') }}" # ignore_errors: true # register: idrac_import_server_config_profile_status @@ -217,14 +217,14 @@ # ansible.builtin.import_role: # name: "idrac_import_server_config_profile" # vars: - # hostname: "{{ lookup('env', 'HOSTNAME') }}" - # username: "{{ lookup('env', 'USERNAME') }}" - # password: "{{ lookup('env', 'PASSWORD') }}" + # hostname: "{{ lookup('env', 'IDRAC_IP') }}" + # username: "{{ lookup('env', 'IDRAC_USER') }}" + # password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" # validate_certs: false # target: ['IDRAC'] # share_parameters: - # share_name: "{{ lookup('env', 'HTTP_URL') }}" - # share_user: "{{ lookup('env', 'USERNAME') }}" + # share_name: "{{ lookup('env', 'http_url') }}" + # share_user: "{{ lookup('env', 'http_username') }}" # share_password: "WrongPassword@123" # scp_file: "{{ lookup('env', 'http_filename') }}" # ignore_errors: true @@ -241,14 +241,14 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: ['IDRAC'] share_parameters: share_name: None - share_user: "{{ lookup('env', 'USERNAME') }}" + share_user: "{{ lookup('env', 'http_username') }}" share_password: "WrongPassword@123" scp_file: "{{ lookup('env', 'http_filename') }}" ignore_errors: true @@ -263,15 +263,15 @@ ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: ['ALL'] share_parameters: - share_name: "{{ lookup('env', 'HTTP_URL') }}" - share_user: "{{ lookup('env', 'HTTP_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" + share_name: "{{ lookup('env', 'http_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" scp_file: "{{ lookup('env', 'http_filename') }}" proxy_support: true ignore_errors: true @@ -287,21 +287,21 @@ # ansible.builtin.import_role: # name: "idrac_import_server_config_profile" # vars: - # hostname: "{{ lookup('env', 'HOSTNAME') }}" - # username: "{{ lookup('env', 'USERNAME') }}" - # password: "{{ lookup('env', 'PASSWORD') }}" + # hostname: "{{ lookup('env', 'IDRAC_IP') }}" + # username: "{{ lookup('env', 'IDRAC_USER') }}" + # password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" # validate_certs: false # target: ['ALL'] # share_parameters: - # share_name: "{{ lookup('env', 'HTTP_URL') }}" - # share_user: "{{ lookup('env', 'HTTP_USERNAME') }}" - # share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" + # share_name: "{{ lookup('env', 'http_url') }}" + # share_user: "{{ lookup('env', 'http_username') }}" + # share_password: "{{ lookup('env', 'http_password') }}" # scp_file: "{{ lookup('env', 'http_filename') }}" # proxy_support: true # proxy_type: http # proxy_server: "randomProxyServer" - # proxy_port: "{{ lookup('env', 'PROXY_PORT') }}" - # proxy_password: "{{ lookup('env', 'PROXY_PASSWORD') }}" + # proxy_port: "{{ lookup('env', 'proxy_port') }}" + # proxy_password: "{{ lookup('env', 'proxy_password') }}" # ignore_errors: true # register: idrac_import_server_config_profile_status diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/converge.yml index f9761ebc1..6ab64e12b 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/converge.yml @@ -1,23 +1,33 @@ --- - name: Converge hosts: all + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'http_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" + scp_file: "{{ lookup('env', 'http_filename') }}" gather_facts: false tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest - name: "Importing SCP from HTTPS" ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: "RAID" share_parameters: - share_name: "{{ lookup('env', 'HTTP_URL') }}" - share_user: "{{ lookup('env', 'HTTP_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" - scp_file: "{{ lookup('env', 'http_filename') }}" + <<: *share_input when: not ansible_check_mode - name: Verifying Import SCP from HTTP with in normal mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/converge.yml index a0348544a..71d891f10 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/converge.yml @@ -1,27 +1,38 @@ --- - name: Converge hosts: all + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'http_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" + scp_file: "{{ lookup('env', 'http_filename') }}" + proxy_support: true + proxy_type: http + proxy_server: "{{ lookup('env', 'proxy_server') }}" + proxy_username: "{{ lookup('env', 'proxy_username') }}" + proxy_port: "{{ lookup('env', 'proxy_port') }}" + proxy_password: "{{ lookup('env', 'proxy_password') }}" gather_facts: false tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest + - name: "Importing SCP from HTTP with proxy parameters" ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'HTTP_URL') }}" - share_user: "{{ lookup('env', 'HTTP_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" - scp_file: "{{ lookup('env', 'http_filename') }}" - proxy_support: true - proxy_type: http - proxy_server: "{{ lookup('env', 'PROXY_SERVER') }}" - proxy_port: "{{ lookup('env', 'PROXY_PORT') }}" - proxy_username: "{{ lookup('env', 'PROXY_USER') }}" - proxy_password: "{{ lookup('env', 'PROXY_PASSWORD') }}" + <<: *share_input when: not ansible_check_mode - name: Verifying Import SCP from HTTP with proxy parameters in normal mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_proxy_parameters/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/converge.yml index b96730d75..f49f28438 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/converge.yml @@ -2,26 +2,37 @@ - name: Converge hosts: all gather_facts: false + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'http_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" + scp_file: "{{ lookup('env', 'http_filename') }}" + proxy_support: true + proxy_server: "{{ lookup('env', 'proxy_server') }}" + proxy_username: "{{ lookup('env', 'proxy_username') }}" + proxy_port: "{{ lookup('env', 'proxy_port') }}" + proxy_password: "{{ lookup('env', 'proxy_password') }}" + ignore_certificate_warning: showerror tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest + - name: "Importing SCP from HTTPS with ignore_certificate_warning as showerror" ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'HTTP_URL') }}" - share_user: "{{ lookup('env', 'HTTP_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTP_PASSWORD') }}" - scp_file: "{{ lookup('env', 'http_filename') }}" - proxy_support: true - proxy_server: "{{ lookup('env', 'PROXY_SERVER') }}" - proxy_port: "{{ lookup('env', 'PROXY_PORT') }}" - proxy_username: "{{ lookup('env', 'PROXY_USER') }}" - proxy_password: "{{ lookup('env', 'PROXY_PASSWORD') }}" - ignore_certificate_warning: showerror + <<: *share_input when: not ansible_check_mode - name: Verifying Import SCP from HTTP with ignore_certificate_warning as showerror in normal mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/http_share_with_showerror_certificate_warning/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/converge.yml index 7981a536c..cb61a0947 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/converge.yml @@ -1,21 +1,32 @@ --- - name: Converge hosts: all + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'https_url') }}" + share_user: "{{ lookup('env', 'http_username') }}" + share_password: "{{ lookup('env', 'http_password') }}" + scp_file: "{{ lookup('env', 'https_filename') }}" gather_facts: false tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest + - name: "Importing SCP from HTTPS" ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'HTTPS_URL') }}" - share_user: "{{ lookup('env', 'HTTPS_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTPS_PASSWORD') }}" - scp_file: "{{ lookup('env', 'https_filename') }}" + <<: *share_input when: not ansible_check_mode - name: Verifying Import SCP from HTTPS in normal mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/converge.yml index 013505814..2f10bff1f 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/converge.yml @@ -1,27 +1,38 @@ --- - name: Converge hosts: all + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'https_url') }}" + share_user: "{{ lookup('env', 'https_username') }}" + share_password: "{{ lookup('env', 'https_password') }}" + scp_file: "{{ lookup('env', 'https_filename') }}" + proxy_support: true + proxy_type: http + proxy_server: "{{ lookup('env', 'proxy_server') }}" + proxy_username: "{{ lookup('env', 'proxy_username') }}" + proxy_port: "{{ lookup('env', 'proxy_port') }}" + proxy_password: "{{ lookup('env', 'proxy_password') }}" gather_facts: false tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest + - name: "Importing SCP from HTTPS with proxy parameters" ansible.builtin.import_role: name: "idrac_import_server_config_profile" vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'HTTPS_URL') }}" - share_user: "{{ lookup('env', 'HTTPS_USERNAME') }}" - share_password: "{{ lookup('env', 'HTTPS_PASSWORD') }}" - scp_file: "{{ lookup('env', 'https_filename') }}" - proxy_support: true - proxy_type: http - proxy_server: "{{ lookup('env', 'PROXY_SERVER') }}" - proxy_username: "{{ lookup('env', 'PROXY_USER') }}" - proxy_port: "{{ lookup('env', 'PROXY_PORT') }}" - proxy_password: "{{ lookup('env', 'PROXY_PASSWORD') }}" + <<: *share_input when: not ansible_check_mode - name: Verifying Import SCP from HTTPS with proxy parameters in normal mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/https_share_with_proxy_parameters/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_json/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_json/converge.yml index 3fbeec584..bbc8161cf 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_json/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_json/converge.yml @@ -7,9 +7,9 @@ ansible.builtin.import_role: name: idrac_import_server_config_profile vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: - IDRAC diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_xml/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_xml/converge.yml index bd956dc0c..3f7ef166a 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_xml/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_buffer_xml/converge.yml @@ -7,9 +7,9 @@ ansible.builtin.import_role: name: idrac_import_server_config_profile vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false target: ['IDRAC'] import_buffer: '<SystemConfiguration><Component FQDD="iDRAC.Embedded.1"><Attribute Name="Time.1#Timezone">CST6CDT</Attribute> diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/converge.yml index 860e63b52..4e130f66a 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/converge.yml @@ -1,23 +1,24 @@ --- - name: Converge hosts: all + vars: + _target: ['NIC', 'IDRAC'] + share_input: &share_input + share_name: "{{ lookup('env', 'nfs_url') }}" + scp_file: "{{ lookup('env', 'nfs_filename') }}" gather_facts: false tasks: - - name: "Importing SCP from NFS with multiple components" ansible.builtin.import_role: name: idrac_import_server_config_profile vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false - target: - - 'NIC' - - 'IDRAC' + target: "{{ _target }}" share_parameters: - share_name: "{{ lookup('env', 'NFS_URL') }}" - scp_file: "{{ lookup('env', 'nfs_filename') }}" + <<: *share_input shutdown_type: 'Forced' end_host_power_state: 'On' when: not ansible_check_mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/import_multiple_target/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/converge.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/converge.yml index bb839b38b..14d3de043 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/converge.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/converge.yml @@ -1,20 +1,30 @@ --- - name: Converge hosts: all + vars: + share_input: &share_input + share_name: "{{ lookup('env', 'nfs_url') }}" + scp_file: "{{ lookup('env', 'nfs_filename') }}" gather_facts: false tasks: + - name: "Pre-requisites" + ansible.builtin.include_tasks: + file: "../resources/tests/export.yml" + vars: + _share_parameters: + <<: *share_input + tags: molecule-idempotence-notest - name: "Importing SCP from NFS" ansible.builtin.import_role: name: idrac_import_server_config_profile vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false share_parameters: - share_name: "{{ lookup('env', 'NFS_URL') }}" - scp_file: "{{ lookup('env', 'nfs_filename') }}" + <<: *share_input shutdown_type: 'Forced' end_host_power_state: 'On' when: not ansible_check_mode diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/molecule.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/molecule.yml index e69de29bb..fc17009ba 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/molecule.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/molecule.yml @@ -0,0 +1,5 @@ +--- +provisioner: + name: ansible + playbooks: + cleanup: ../resources/tests/cleanup.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/prepare.yml deleted file mode 100644 index 5fadc24b5..000000000 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/nfs_share/prepare.yml +++ /dev/null @@ -1,7 +0,0 @@ ---- -- name: Cleanup - hosts: all - gather_facts: false - tasks: - - name: Cleanup config - ansible.builtin.include_tasks: ../resources/tests/prepare.yml diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/cleanup.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/cleanup.yml new file mode 100644 index 000000000..1cb9a04de --- /dev/null +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/cleanup.yml @@ -0,0 +1,64 @@ +--- +- name: Cleanup + hosts: all + gather_facts: false + tasks: + - name: Setfact for target + ansible.builtin.set_fact: + idrac_import_server_config_profile_target: "{{ idrac_import_server_config_profile_target | default(['ALL']) }}" + + - name: Cleanup when target is ['ALL'] or ['IDRAC'] + ansible.builtin.import_role: + name: idrac_attributes + vars: + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + idrac_attributes: + Time.1.Timezone: "UTC" # "UTC" + when: "'ALL' in idrac_import_server_config_profile_target or 'IDRAC' in idrac_import_server_config_profile_target" + + - name: Cleanup when target is ['BIOS'] + dellemc.openmanage.idrac_bios: + idrac_ip: "{{ lookup('env', 'IDRAC_IP') }}" + idrac_user: "{{ lookup('env', 'IDRAC_USER') }}" + idrac_password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + attributes: + NumLock: "On" # "On" + when: "'BIOS' in idrac_import_server_config_profile_target" + + - name: Calling nic_helper.yml + ansible.builtin.include_tasks: + file: "nic_helper.yml" + when: "'NIC' in idrac_import_server_config_profile_target" + + - name: Cleanup when target is ['NIC'] + dellemc.openmanage.idrac_network_attributes: + idrac_ip: "{{ lookup('env', 'IDRAC_IP') }}" + idrac_user: "{{ lookup('env', 'IDRAC_USER') }}" + idrac_password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + network_adapter_id: "{{ inp_network_adapter_id }}" + network_device_function_id: "{{ inp_network_device_function_id }}" + apply_time: Immediate + oem_network_attributes: + BannerMessageTimeout: "5" # "5" + when: "'NIC' in idrac_import_server_config_profile_target" + + - name: Calling raid_helper.yml + ansible.builtin.include_tasks: + file: "raid_helper.yml" + when: "'RAID' in idrac_import_server_config_profile_target" + + - name: Cleanup when target is ['RAID'] + dellemc.openmanage.idrac_redfish_storage_controller: + baseuri: "{{ lookup('env', 'IDRAC_IP') }}:{{ https_port }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + controller_id: "{{ inp_controller_id }}" + attributes: + SupportedInitializationTypes: "Fast" + when: "'RAID' in idrac_import_server_config_profile_target" diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/export.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/export.yml new file mode 100644 index 000000000..f0b8d9024 --- /dev/null +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/export.yml @@ -0,0 +1,72 @@ +--- +- name: Setfact for target + ansible.builtin.set_fact: + idrac_import_server_config_profile_target: "{{ idrac_import_server_config_profile_target | default(['ALL']) }}" + +- name: Performing export of server config profile + ansible.builtin.import_role: + name: idrac_export_server_config_profile + vars: + idrac_ip: "{{ lookup('env', 'IDRAC_IP') }}" + idrac_user: "{{ lookup('env', 'IDRAC_USER') }}" + idrac_password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + target: "{{ idrac_import_server_config_profile_target }}" + share_parameters: "{{ _share_parameters }}" + when: _share_parameters is defined + +- name: Making changes when target is ['ALL'] or ['IDRAC'] + ansible.builtin.import_role: + name: idrac_attributes + vars: + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + idrac_attributes: + Time.1.Timezone: "CST6CDT" + when: "'ALL' in idrac_import_server_config_profile_target or 'IDRAC' in idrac_import_server_config_profile_target" + +- name: Making changes when target is ['BIOS'] + dellemc.openmanage.idrac_bios: + idrac_ip: "{{ lookup('env', 'IDRAC_IP') }}" + idrac_user: "{{ lookup('env', 'IDRAC_USER') }}" + idrac_password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + attributes: + NumLock: "Off" + when: "'BIOS' in idrac_import_server_config_profile_target" + +- name: Calling nic_helper.yml + ansible.builtin.include_tasks: + file: "nic_helper.yml" + when: "'NIC' in idrac_import_server_config_profile_target" + +- name: Making changes when target is ['NIC'] + dellemc.openmanage.idrac_network_attributes: + idrac_ip: "{{ lookup('env', 'IDRAC_IP') }}" + idrac_user: "{{ lookup('env', 'IDRAC_USER') }}" + idrac_password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + network_adapter_id: "{{ inp_network_adapter_id }}" + network_device_function_id: "{{ inp_network_device_function_id }}" + apply_time: Immediate + oem_network_attributes: + BannerMessageTimeout: "4" + when: "'NIC' in idrac_import_server_config_profile_target" + +- name: Calling raid_helper.yml + ansible.builtin.include_tasks: + file: "raid_helper.yml" + when: "'RAID' in idrac_import_server_config_profile_target" + +- name: Making changes when target is ['RAID'] + dellemc.openmanage.idrac_redfish_storage_controller: + baseuri: "{{ lookup('env', 'IDRAC_IP') }}:{{ https_port }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" + validate_certs: false + controller_id: "{{ inp_controller_id }}" + attributes: + SupportedInitializationTypes: "Slow" + when: "'RAID' in idrac_import_server_config_profile_target" diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/nic_helper.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/nic_helper.yml new file mode 100644 index 000000000..a8211d70a --- /dev/null +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/nic_helper.yml @@ -0,0 +1,39 @@ +- name: Helper file for NIC + block: + - name: Fetch network adapter id + ansible.builtin.uri: &network_uri + url: "https://{{ idrac_ip | ansible.utils.ipwrap }}:{{ idrac_port }}/redfish/v1/Systems/System.Embedded.1/NetworkAdapters" + user: "{{ idrac_user }}" + password: "{{ idrac_password }}" + method: GET + body: {} + validate_certs: false + body_format: json + return_content: true + status_code: 200 + headers: 'Accept=application/json' + force_basic_auth: true + register: fetched_network_adapter_id + + - name: Extracting network adapter id + ansible.builtin.set_fact: + network_adapter_id: "{{ fetched_network_adapter_id.content | from_json | json_query('Members[0]') }}" + + - name: Setting network adapter id + ansible.builtin.set_fact: + inp_network_adapter_id: "{{ '@odata.id' | extract(network_adapter_id) | split('/') | last }}" + + - name: Fetch network device function id + ansible.builtin.uri: + <<: *network_uri + url: "https://{{ idrac_ip | ansible.utils.ipwrap }}:{{ idrac_port }}/redfish/v1/Systems\ + /System.Embedded.1/NetworkAdapters/{{ inp_network_adapter_id }}/NetworkDeviceFunctions" + register: fetched_network_device_function_id + + - name: Extracting network device function id + ansible.builtin.set_fact: + network_device_function_id: "{{ fetched_network_device_function_id.content | from_json | json_query('Members[0]') }}" + + - name: Setting network device function id + ansible.builtin.set_fact: + inp_network_device_function_id: "{{ '@odata.id' | extract(network_device_function_id) | split('/') | last }}" diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/prepare.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/prepare.yml index aa9fd74c5..b73bedd59 100644 --- a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/prepare.yml +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/prepare.yml @@ -3,9 +3,9 @@ ansible.builtin.import_role: name: idrac_import_server_config_profile vars: - hostname: "{{ lookup('env', 'HOSTNAME') }}" - username: "{{ lookup('env', 'USERNAME') }}" - password: "{{ lookup('env', 'PASSWORD') }}" + hostname: "{{ lookup('env', 'IDRAC_IP') }}" + username: "{{ lookup('env', 'IDRAC_USER') }}" + password: "{{ lookup('env', 'IDRAC_PASSWORD') }}" validate_certs: false import_buffer: "{ \"SystemConfiguration\": {\"Components\": [ { \"FQDD\": \"iDRAC.Embedded.1\",\"Attributes\": [{ \"Name\": \"Time.1#Timezone\", diff --git a/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/raid_helper.yml b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/raid_helper.yml new file mode 100644 index 000000000..42d0ff214 --- /dev/null +++ b/ansible_collections/dellemc/openmanage/roles/idrac_import_server_config_profile/molecule/resources/tests/raid_helper.yml @@ -0,0 +1,24 @@ +- name: Helper file for RAID + block: + - name: Fetch storage controller id + ansible.builtin.uri: &network_uri + url: "https://{{ idrac_ip | ansible.utils.ipwrap }}:{{ idrac_port }}/redfish/v1/Systems/System.Embedded.1/Storage" + user: "{{ idrac_user }}" + password: "{{ idrac_password }}" + method: GET + body: {} + validate_certs: false + body_format: json + return_content: true + status_code: 200 + headers: 'Accept=application/json' + force_basic_auth: true + register: fetched_controller_id + + - name: Extracting controller id + ansible.builtin.set_fact: + controller_id: "{{ fetched_controller_id.content | from_json | json_query('Members[0]') }}" + + - name: Setting controller id + ansible.builtin.set_fact: + inp_controller_id: "{{ '@odata.id' | extract(controller_id) | split('/') | last }}" |