1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- ---
- # helm uses some undecipherable configmaps, so we need to use the binary
- - name: helm chart check
- ansible.builtin.command:
- argv:
- - /usr/bin/env
- - KUBECONFIG={{ ansible_facts['user_dir'] }}/kubeconfig-{{ cluster }}
- - /usr/local/bin/helm
- - -n
- - stackrox
- - list
- - -o
- - json
- - --filter
- - stackrox.*services
- chdir: "{{ ansible_facts['user_dir'] }}"
- register: helm_chart_status
- - name: assert chart isn't there
- set_fact:
- helm_chart_present: false
- - name: unless proven otherwise
- set_fact:
- helm_chart_present: true
- when:
- - helm_chart_status.stdout | from_json | list | length > 0
- - (helm_chart_status.stdout | from_json | list)[0].status == "deployed"
- - name: create helm vars
- template:
- src: templates/helm-vars.yml
- dest: "{{ ansible_facts['user_dir'] }}/{{ clusters[cluster].name }}-helm-vars.yaml"
- mode: 0600
- owner: "{{ ansible_user }}"
- group: "{{ ansible_user }}"
- when:
- - not helm_chart_present
- - name: check the repo
- ansible.builtin.command:
- argv:
- - /usr/bin/env
- - KUBECONFIG={{ ansible_facts['user_dir'] }}/kubeconfig-{{ cluster }}
- - /usr/local/bin/helm
- - repo
- - list
- - -o
- - json
- chdir: "{{ ansible_facts['user_dir'] }}"
- ignore_errors: yes
- register: repo_is_there
- - name: add the repo
- ansible.builtin.command:
- argv:
- - /usr/bin/env
- - KUBECONFIG={{ ansible_facts['user_dir'] }}/kubeconfig-{{ cluster }}
- - /usr/local/bin/helm
- - repo
- - add
- - rhacs
- - https://mirror.openshift.com/pub/rhacs/charts/
- chdir: "{{ ansible_facts['user_dir'] }}"
- when: repo_is_there.failed or (repo_is_there.stdout | from_json | list | length) == 0
- - name: apply helm chart
- ansible.builtin.command:
- argv:
- - /usr/bin/env
- - KUBECONFIG={{ ansible_facts['user_dir'] }}/kubeconfig-{{ cluster }}
- - /usr/local/bin/helm
- - install
- - -n
- - stackrox
- - --create-namespace
- - stackrox-secured-cluster-services
- - rhacs/secured-cluster-services
- - -f
- - "{{ ansible_facts['user_dir'] }}/{{ clusters[cluster].name }}-helm-bundle.yaml"
- - -f
- - "{{ ansible_facts['user_dir'] }}/{{ clusters[cluster].name }}-helm-vars.yaml"
- chdir: "{{ ansible_facts['user_dir'] }}"
- when:
- - not helm_chart_present
- ...
|