summaryrefslogtreecommitdiffstats
path: root/roles/openshift_metrics/tasks/scale.yaml
blob: 65f35fb4674b7d9e7c23b0d73171624111cb45c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
---
- command: >
    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig get {{object}}
    -o jsonpath='{.spec.replicas}' -n {{openshift_metrics_project}}
  register: replica_count
  failed_when: "replica_count.rc == 1 and 'exists' not in replica_count.stderr"
  when: not ansible_check_mode
  changed_when: no

- command: >
    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig scale {{object}}
    --replicas={{desired}} -n {{openshift_metrics_project}}
  register: scale_result
  failed_when: scale_result.rc == 1 and 'exists' not in scale_result.stderr
  when:
  - replica_count.stdout != (desired | string)
  - not ansible_check_mode
  changed_when: no

- name: Waiting for {{object}} to scale to {{desired}}
  command: >
    {{ openshift.common.client_binary }} --config={{ mktemp.stdout }}/admin.kubeconfig 
    get {{object}} -n {{openshift_metrics_project|quote}} -o jsonpath='{.status.replicas}'
  register: replica_counts
  until: replica_counts.stdout.find("{{desired}}") != -1
  retries: 30
  delay: 10
  when:
    - replica_count.stdout != (desired | string)
    - not ansible_check_mode