1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- # Copyright 2021 Dell Inc. or its subsidiaries. All Rights Reserved.
- #
- # Licensed under the Apache License, Version 2.0 (the "License");
- # you may not use this file except in compliance with the License.
- # You may obtain a copy of the License at
- #
- # http://www.apache.org/licenses/LICENSE-2.0
- #
- # Unless required by applicable law or agreed to in writing, software
- # distributed under the License is distributed on an "AS IS" BASIS,
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- # See the License for the specific language governing permissions and
- # limitations under the License.
- ---
- - name: Ping the powervault device to validate connectivity
- command: ping -c1 {{ inventory_hostname }}
- register: validate_login
- changed_when: false
- ignore_errors: yes
- tags: install
- - name: Get auth string
- shell: echo -n {{ powervault_me4_username }}_{{ powervault_me4_password }} | sha256sum
- register: auth_string
- changed_when: false
- ignore_errors: yes
- tags: install
- - name: Get session key
- uri:
- url: https://{{ inventory_hostname }}/api/login/{{ auth_string.stdout | replace(" -", "") }}
- method: GET
- headers:
- {'datatype': 'json'}
- validate_certs: no
- register: session_key
- tags: install
- - name: Set powervault ip
- add_host:
- name: "pv_ip"
- powervault_ip: "{{ inventory_hostname }}"
- tags: install
- - name: Execute show system command
- uri:
- url: https://{{ inventory_hostname }}/api/show/system
- method: GET
- body_format: json
- validate_certs: no
- use_proxy: no
- headers:
- {'sessionKey': "{{ session_key.json.status[0].response }}", 'datatype':'json'}
- register: system_info
- tags: install
- - name: Get the product id
- set_fact:
- pv_id: "{{ system_info.json.system[0]['product-id'] }}"
- - name: Verify the product id and model no. of device
- fail:
- msg: "{{ fail_pv_support }}"
- when:
- - scsi_product_id not in system_info.json.system[0]['scsi-product-id']
- - pv_id != "ME4084" or pv_id != "ME4024" or pv_id != "ME4012"
- - name: Set system name
- uri:
- url: https://{{ inventory_hostname }}/api/set/system/name/{{ powervault_me4_system_name }}
- method: GET
- body_format: json
- validate_certs: no
- use_proxy: no
- headers:
- {'sessionKey': "{{ session_key.json.status[0].response }}", 'datatype':'json'}
- register: system_name
- when: powervault_me4_system_name
- tags: install
|