--- - name: "Install Pip3 for {{ service_name }}" apt: name: python3-pip state: present become: True tags: - kube_apply - name: "Install Kubernetes over Pip3 for {{ service_name }}" pip: name: kubernetes state: present become: True tags: - kube_apply - name: "Install and Setup Kubernetes (Single node, Master-only cluster) for {{ service_name }}" include_role: name: geerlingguy.kubernetes vars: kubernetes_allow_pods_on_master: true tags: - kube_install - name: "Download AWX {{ awx_operator_version }} to Kubernetes Template for {{ service_name }}" get_url: url: "{{ awx_operator_url }}" dest: /tmp/awx-operator.yaml mode: '0664' tags: - kube_apply - name: "Apply AWX {{ awx_operator_version }} to Kubernetes {{ service_name }}" k8s: state: present src: /tmp/awx-operator.yaml namespace: default wait: yes wait_timeout: 300 tags: - kube_apply - name: "Ensure that postgres volume directory exists for {{ service_name }}" file: path: "{{ item }}" state: directory owner: 'root' group: 'root' loop: - "{{ kubernetes_awx_postgres_volume_path }}" - "{{ kubernetes_awx_project_volume_path }}" tags: - kube_apply - name: "Copy Deployment Template for {{ service_name }}" template: src: awx-deployment.yml.j2 dest: /tmp/awx-deployment.yml owner: root group: root mode: '0644' tags: - kube_apply - name: "Create a AWX k8s namespace for {{ service_name }}" k8s: name: "{{ kubernetes_awx_namespace }}" api_version: v1 kind: Namespace state: present tags: - kube_apply - name: "Apply AWX Deployment for {{ service_name }}" k8s: state: present src: /tmp/awx-deployment.yml namespace: "{{ kubernetes_awx_namespace }}" wait: yes wait_timeout: 300 tags: - kube_apply - name: "Cleanup for {{ service_name }}" file: path: "{{ item }}" state: absent loop: - /tmp/awx-operator.yaml - /tmp/awx-deployment.yml tags: - kube_apply - name: "Wait for AWX service {{ service_name }}" uri: url: "http://{{ stage_server_ip }}:{{ kubernetes_awx_service_port }}" status_code: 200 validate_certs: False register: result until: result.status == 200 retries: 60 delay: 20 tags: - kube_apply