# 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.
---
# vars file for webui_awx

# Usage: install_awx.yml
awx_namespace: awx
awx_pv_yml_file_path: "{{ role_path }}/files/awx_projects_pv.yml"
awx_postgres_pv_file_path: "{{ role_path }}/files/awx_postgres_pv.yml"
awx_operator_yml_file_path: "{{ role_path }}/files/awx_operator.yml"
awx_ee_docker_file: "{{ role_path }}/files/awx_ee.yml"
awx_yml_file_path: "{{ role_path }}/files/awx.yml"
postgres_storage_class: nfs-client
projects_existing_claim: awx-pv-claim
awx_version: 19.1.0
file_perm: '0644'
awx_wait_time: 90
deployment_failure_msg: "Deployment failed due to docker pull rate limit"

# Usage: configure_settings.yml
awx_port: 8052
awx_service_name: awx-ui
tower_config_file: "{{ role_path }}/files/.tower_cli.cfg"
tower_vault_file: "{{ role_path }}/files/.tower_vault_key"
vault_file_perm: '0644'
awx_tcp_ports:
  - 80
  - 8383
  - 8686
  - 5432
  - 8052
  - 30000-32767
awx_ui_msg: "AWX Upgrading"
return_status: 200
max_retries: 20
max_delay: 15

# Usage: awx_configuration.yml
default_org: Default
default_template: 'Demo Job Template'
default_project: 'Demo Project'
default_credential: 'Demo Credential'
default_credential_type: Machine
organization_name: 'DellEMC'
project_name: 'omnia'
project_description: "Directory which contains configuration playbooks"
inventory_names:
  - { name: idrac_inventory, description: "Inventory to store IPs of idrac servers", flag: true }
  - { name: ethernet_inventory, description: "Inventory to store IPs of ethernet switches", flag: "{{ ethernet_switch_support }}" }
  - { name: infiniband_inventory, description: "Inventory to store IPs of infiniband switches", flag: "{{ ib_switch_support }}" }
  - { name: powervault_me4_inventory, description: "Inventory to store IPs of ME4 servers", flag: "{{ powervault_support }}" }
  - { name: node_inventory, description: "Inventory to store host IPs of servers", flag: true }
group_names:
  - { name: manager, description: "Group to store IP of head node" }
  - { name: compute, description: "Group to store IPs of compute nodes" }
  - { name: login_node, description: "Group to store IP of login node" }
  - { name: nfs_node, description: "Group to store IP of NFS node" }
credential_details:
  - { name: idrac_credential, type: Network, username: "{{ idrac_username }}", password: "{{ idrac_password }}", flag: true }
  - { name: ethernet_credential, type: Machine, username: "{{ ethernet_switch_username }}", password: "{{ ethernet_switch_password }}", flag: "{{ ethernet_switch_support }}" }
  - { name: infiniband_credential, type: Network, username: "{{ ib_username }}", password: "{{ ib_password }}", flag: "{{ ib_switch_support }}" }
  - { name: powervault_me4_credential, type: Network, username: "{{ powervault_me4_username }}", password: "{{ powervault_me4_password }}", flag: "{{ powervault_support }}" }
  - { name: node_credential, type: Machine, username: root, password: omnia@123, flag: true }
job_template_details:
  - { name: idrac_template, inventory: idrac_inventory, playbook: control_plane/idrac.yml, credential: idrac_credential, flag: true }
  - { name: ethernet_template, inventory: ethernet_inventory, playbook: control_plane/ethernet.yml, credential: ethernet_credential, flag: "{{ ethernet_switch_support }}" }
  - { name: infiniband_template, inventory: infiniband_inventory, playbook: control_plane/infiniband.yml, credential: infiniband_credential, flag: "{{ ib_switch_support }}" }
  - { name: powervault_me4_template, inventory: powervault_me4_inventory, playbook: control_plane/powervault_me4.yml, credential: powervault_me4_credential, flag: "{{ powervault_support }}" }
  - { name: node_inventory_job, inventory: node_inventory, playbook: control_plane/collect_node_info.yml, credential: node_credential, flag: true }
  - { name: device_inventory_job, inventory: node_inventory, playbook: control_plane/collect_device_info.yml, credential: node_credential, flag: true }
omnia_job_template_details:
  - { name: deploy_omnia_template, inventory: node_inventory, playbook: omnia.yml, credential: node_credential }  
scheduled_templates:
  - { name: NodeInventorySchedule, template: node_inventory_job, schedule_rule: "DTSTART:20210815T120000Z RRULE:FREQ=MINUTELY;INTERVAL=10" }
  - { name: DeviceInventorySchedule, template: device_inventory_job, schedule_rule: "DTSTART:20210815T060000Z RRULE:FREQ=DAILY;INTERVAL=1"}