commit | author | age
|
1874b6
|
1 |
--- |
GC |
2 |
# Workloads should run on bastion. This enables using the k8s module in the workload. |
|
3 |
# Masters don't have Python/pip/openshift python module installed |
|
4 |
# And in OCP 4 we don't have access to masters anyway anymore... |
|
5 |
- name: Install workloads |
|
6 |
hosts: bastions |
|
7 |
gather_facts: false |
|
8 |
run_once: true |
|
9 |
become: false |
|
10 |
tasks: |
046b05
|
11 |
- name: Set Ansible Python interpreter to k8s virtualenv |
WK |
12 |
set_fact: |
|
13 |
ansible_python_interpreter: /opt/virtualenvs/k8s/bin/python |
1874b6
|
14 |
- name: Install ocp-default workloads |
GC |
15 |
when: |
|
16 |
- default_workloads | d("") | length > 0 |
|
17 |
tags: |
|
18 |
- default_workloads |
|
19 |
block: |
|
20 |
- name: Install ocp-default-workloads |
|
21 |
when: |
|
22 |
- default_workloads | d("") | length >0 |
|
23 |
block: |
|
24 |
- name: Deploy ocp-default workloads |
|
25 |
include_role: |
|
26 |
name: "{{ workload_loop_var }}" |
|
27 |
vars: |
|
28 |
ocp_username: "system:admin" |
|
29 |
ACTION: "provision" |
|
30 |
loop: "{{ default_workloads }}" |
|
31 |
loop_control: |
|
32 |
loop_var: workload_loop_var |
|
33 |
|
|
34 |
- name: Install ocp-infra workloads |
|
35 |
when: |
|
36 |
- infra_workloads|d("")|length > 0 |
|
37 |
tags: |
|
38 |
- infra_workloads |
|
39 |
block: |
|
40 |
- name: Check if admin_user is set |
|
41 |
fail: |
|
42 |
msg: admin_user must be set for ocp-infra workloads |
|
43 |
when: |
|
44 |
- not admin_user is defined or admin_user|length == 0 |
|
45 |
- name: Install ocp-infra-workloads |
|
46 |
when: |
|
47 |
- infra_workloads|d("")|length >0 |
|
48 |
block: |
|
49 |
- name: Deploy ocp-infra workloads |
|
50 |
include_role: |
|
51 |
name: "{{ workload_loop_var }}" |
|
52 |
vars: |
|
53 |
ocp_username: "{{ admin_user }}" |
|
54 |
ACTION: "provision" |
|
55 |
loop: "{{ infra_workloads.split(',')|list }}" |
|
56 |
loop_control: |
|
57 |
loop_var: workload_loop_var |
|
58 |
|
|
59 |
- name: Install ocp-workloads |
|
60 |
when: |
|
61 |
- user_count|d(0)|int > 0 |
|
62 |
- student_workloads|d("")|length > 0 |
|
63 |
tags: |
|
64 |
- student_workloads |
|
65 |
block: |
|
66 |
- name: Check if authentication mechanism is set to htpasswd |
|
67 |
fail: |
|
68 |
msg: Authentication Mechanism must be htpasswd |
|
69 |
when: |
|
70 |
- install_idm|d("") != "htpasswd" |
|
71 |
- name: Check if remove_self_provisioners=true |
|
72 |
fail: |
|
73 |
msg: remove_self_provisioners must be set to true |
|
74 |
tags: |
|
75 |
- remove_self_provisioners |
|
76 |
when: |
|
77 |
- not remove_self_provisioners|d(False)|bool |
6bb8c0
|
78 |
- not ignore_self_provisioners|d(False)|bool |
WK |
79 |
# WK Add this so that I can run a student workload for RHTE. I don't understand why self provisioners has be be false... |
1874b6
|
80 |
|
GC |
81 |
- name: Generate list of User IDs |
|
82 |
set_fact: |
|
83 |
users: "{{ lookup('sequence', 'start=1 end={{ user_count|int }}', wantlist=true) | map('int') | list }}" |
|
84 |
|
|
85 |
- name: Deploy ocp-workloads for each user ID |
|
86 |
include_role: |
|
87 |
name: "{{ workload_loop_var[1] }}" |
|
88 |
vars: |
|
89 |
ocp_username: "user{{ workload_loop_var[0] }}" |
|
90 |
become_override: yes |
|
91 |
ACTION: "provision" |
|
92 |
loop: "{{ users | product(student_workloads.split(','))|list }}" |
|
93 |
loop_control: |
|
94 |
loop_var: workload_loop_var |