main.yml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. # Copyright 2022 Dell Inc. or its subsidiaries. All Rights Reserved.
  2. #
  3. # Licensed under the Apache License, Version 2.0 (the "License");
  4. # you may not use this file except in compliance with the License.
  5. # You may obtain a copy of the License at
  6. #
  7. # http://www.apache.org/licenses/LICENSE-2.0
  8. #
  9. # Unless required by applicable law or agreed to in writing, software
  10. # distributed under the License is distributed on an "AS IS" BASIS,
  11. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. # See the License for the specific language governing permissions and
  13. # limitations under the License.
  14. ---
  15. # vars file for webui_awx
  16. # Usage: install_awx.yml
  17. awx_namespace: awx
  18. awx_operator_folder: "/root/awx-operator"
  19. awx_pv_yml_file_path: "{{ role_path }}/files/awx_projects_pv.yml"
  20. awx_postgres_pv_file_path: "{{ role_path }}/files/awx_postgres_pv.yml"
  21. awx_ee_docker_file: "{{ role_path }}/files/awx_ee.yml"
  22. awx_yml_file_path: "{{ role_path }}/files/awx.yml"
  23. postgres_storage_class: nfs-client
  24. projects_existing_claim: awx-pv-claim
  25. awx_version: 19.4.0
  26. awx_operator_version: 0.17.0
  27. file_perm: '0644'
  28. awx_wait_time: 600
  29. deployment_failure_msg: "Deployment failed due to docker pull rate limit"
  30. awx_operator_link: "https://github.com/ansible/awx-operator.git"
  31. awx_manager_file: '/root/awx-operator/config/manager/manager.yaml'
  32. liveness_probe_initial: "initialDelaySeconds: 15"
  33. liveness_probe_final: "initialDelaySeconds: 600"
  34. readiness_probe_initial: "initialDelaySeconds: 5"
  35. readiness_probe_final: "initialDelaySeconds: 300"
  36. awx_operator_time: 900s
  37. awx_deployment_time: 1500s
  38. operator_deployment_failure: "AWX Operator deployment failed due to awx operator pod is in crashloopbackoff state"
  39. # Usage: configure_settings.yml
  40. awx_port: 8052
  41. awx_service_name: awx-ui
  42. tower_config_file: "{{ role_path }}/files/.tower_cli.cfg"
  43. tower_vault_file: "{{ role_path }}/files/.tower_vault_key"
  44. vault_file_perm: '0644'
  45. awx_tcp_ports:
  46. - 80
  47. - 8383
  48. - 8686
  49. - 5432
  50. - 8052
  51. - 30000-32767
  52. awx_ui_msg: "AWX Upgrading"
  53. return_status: 200
  54. max_retries: 25
  55. max_delay: 15
  56. awx_ui_wait_time: 900
  57. # Usage: check_prerequisites.yml
  58. min_retries: 2
  59. # Usage: awx_logo.yml
  60. awx_login_info: "An open-source toolkit for deploying and managing high performance clusters for HPC, AI, and data analytics workloads."
  61. omnia_logo_path: "{{ role_path }}/files/omnia.png"
  62. logo_txt_path: "{{ role_path }}/files/.logo_base64.txt"
  63. # Usage: awx_configuration.yml
  64. default_org: Default
  65. default_template: 'Demo Job Template'
  66. default_project: 'Demo Project'
  67. default_credential: 'Demo Credential'
  68. default_credential_type: Machine
  69. organization_name: 'DellEMC'
  70. project_name: 'omnia'
  71. project_description: "Directory which contains configuration playbooks"
  72. inventory_names:
  73. - { name: node_inventory, description: "Inventory to store host IPs of servers", flag: true }
  74. - { name: idrac_inventory, description: "Inventory to store IPs of idrac servers", flag: "{{ idrac_support }}" }
  75. - { name: ethernet_inventory, description: "Inventory to store IPs of ethernet switches", flag: "{{ ethernet_switch_support }}" }
  76. - { name: infiniband_inventory, description: "Inventory to store IPs of infiniband switches", flag: "{{ ib_switch_support }}" }
  77. - { name: powervault_me4_inventory, description: "Inventory to store IPs of ME4 servers", flag: "{{ powervault_support }}" }
  78. group_names:
  79. - { name: manager, description: "Group to store IP of head node" }
  80. - { name: compute, description: "Group to store IPs of compute nodes" }
  81. - { name: login_node, description: "Group to store IP of login node" }
  82. - { name: nfs_node, description: "Group to store IP of NFS node" }
  83. credential_details:
  84. - { name: node_credential, type: Machine, username: root, password: "{{ provision_password }}", flag: true }
  85. - { name: idrac_credential, type: Network, username: "{{ idrac_username }}", password: "{{ idrac_password }}", flag: "{{ idrac_support }}" }
  86. - { name: ethernet_credential, type: Machine, username: "{{ ethernet_switch_username }}", password: "{{ ethernet_switch_password }}", flag: "{{ ethernet_switch_support }}" }
  87. - { name: infiniband_credential, type: Network, username: "{{ ib_username }}", password: "{{ ib_password }}", flag: "{{ ib_switch_support }}" }
  88. - { name: powervault_me4_credential, type: Network, username: "{{ powervault_me4_username }}", password: "{{ powervault_me4_password }}", flag: "{{ powervault_support }}" }
  89. job_template_details:
  90. - { name: node_inventory_job, inventory: node_inventory, playbook: control_plane/collect_node_info.yml, credential: node_credential, flag: true }
  91. - { name: device_inventory_job, inventory: node_inventory, playbook: control_plane/collect_device_info.yml, credential: node_credential, flag: "{{ device_support_status }}" }
  92. - { name: idrac_template, inventory: idrac_inventory, playbook: control_plane/idrac.yml, credential: idrac_credential, flag: "{{ idrac_support }}" }
  93. - { name: ethernet_template, inventory: ethernet_inventory, playbook: control_plane/ethernet.yml, credential: ethernet_credential, flag: "{{ ethernet_switch_support }}" }
  94. - { name: infiniband_template, inventory: infiniband_inventory, playbook: control_plane/infiniband.yml, credential: infiniband_credential, flag: "{{ ib_switch_support }}" }
  95. - { name: powervault_me4_template, inventory: powervault_me4_inventory, playbook: control_plane/powervault_me4.yml, credential: powervault_me4_credential, flag: "{{ powervault_support }}" }
  96. omnia_job_template_details:
  97. - { name: deploy_omnia_template, inventory: node_inventory, playbook: omnia.yml, credential: node_credential, extra_vars: "ansible_python_interpreter=/usr/bin/python3" }
  98. scheduled_templates:
  99. - { name: NodeInventorySchedule, template: node_inventory_job, schedule_rule: "DTSTART:20210815T120000Z RRULE:FREQ=HOURLY;INTERVAL=1", flag: true }
  100. - { name: DeviceInventorySchedule, template: device_inventory_job, schedule_rule: "DTSTART:20210815T060000Z RRULE:FREQ=DAILY;INTERVAL=1", flag: "{{ device_support_status }}"}