Wolfgang Kulhanek
2020-03-04 6f3b7b3073e11579a62b6e2e8e2d74b6e159bc36
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
---
- name: verify user projects exist
  k8s_facts:
    api_version: v1
    kind: Namespace
    name: "{{ item }}-project"
    field_selectors:
      - status.phase=Active
  register: r_user_namespace
  failed_when: r_user_namespace.resources | list | length != 1
  loop: "{{ users }}"
 
- name: verify guides pod is running
  k8s_facts:
    api_version: v1
    kind: Pod
    namespace: guides
    label_selectors:
      - deploymentconfig=web
    field_selectors:
      - status.phase=Running
  register: r_guides_pod
  failed_when: r_guides_pod.resources | list | length != 1
 
- name: verify guides are accessible
  uri:
    url: http://web-guides.{{ route_subdomain }}
    method: GET
    status_code: 200
 
- name: verify codeready pod is running
  k8s_facts:
    api_version: v1
    kind: Pod
    namespace: codeready
    label_selectors:
      - app=codeready
      - component=codeready
    field_selectors:
      - status.phase=Running
  register: r_codeready_pod
  failed_when: r_codeready_pod.resources | list | length != 1
 
- name: verify codeready is accessible
  uri:
    url: http://codeready-codeready.{{ route_subdomain }}
    method: GET
    status_code: 200
 
- name: verify keycloak pod is running
  k8s_facts:
    api_version: v1
    kind: Pod
    namespace: codeready
    label_selectors:
      - app=codeready
      - component=keycloak
    field_selectors:
      - status.phase=Running
  register: r_keycloak_pod
  failed_when: r_keycloak_pod.resources | list | length != 1
 
- name: verify keycloak is accessible
  uri:
    url: http://keycloak-codeready.{{ route_subdomain }}
    method: GET
    status_code: 200
 
- name: Get SSO admin token
  uri:
    url: http://keycloak-codeready.{{ route_subdomain }}/auth/realms/master/protocol/openid-connect/token
    method: POST
    body:
      username: "{{ codeready_sso_admin_username }}"
      password: "{{ codeready_sso_admin_password }}"
      grant_type: "password"
      client_id: "admin-cli"
    body_format: form-urlencoded
    status_code: 200,201,204
  register: sso_admin_token
 
- name: Verify custom realm exists
  uri:
    url: http://keycloak-codeready.{{ route_subdomain }}/auth/admin/realms/quarkus
    method: GET
    headers:
      Accept: application/json
      Authorization: "Bearer {{ sso_admin_token.json.access_token }}"
    status_code: 200
 
- name: Verify Kafka CRD
  k8s_facts:
    api_version: apiextensions.k8s.io/v1beta1
    kind: CustomResourceDefinition
    name: kafkas.kafka.strimzi.io
  register: r_kafka_crd
  failed_when: r_kafka_crd.resources | list | length != 1
 
- name: verify Kafka operator pod is running
  k8s_facts:
    api_version: v1
    kind: Pod
    namespace: openshift-operators
    label_selectors:
      - name=amq-streams-cluster-operator
    field_selectors:
      - status.phase=Running
  register: r_amq_operator_pod
  failed_when: r_amq_operator_pod.resources | list | length != 1
 
- name: Verify Jaeger CRD
  k8s_facts:
    api_version: apiextensions.k8s.io/v1beta1
    kind: CustomResourceDefinition
    name: jaegers.jaegertracing.io
  register: r_jaeger_crd
  failed_when: r_jaeger_crd.resources | list | length != 1
 
- name: verify Jaeger operator pod is running
  k8s_facts:
    api_version: v1
    kind: Pod
    namespace: openshift-operators
    label_selectors:
      - name = jaeger-operator
  register: r_jaeger_operator_pod
  failed_when: r_jaeger_operator_pod.resources | list | length != 1
 
- name: verify user workspaces are started
  include_tasks: confirm_che_workspace.yaml
  vars:
    user: "{{ item }}"
  with_list: "{{ users }}"
 
# Leave this as the last task in the playbook.
- name: workload verification tasks complete
  debug:
    msg: "Workload Tasks completed successfully."
  when: not silent|bool