summaryrefslogtreecommitdiffstats
path: root/roles/openshift_node_group/tasks/create_config.yml
blob: 02ec30a624a41cfc2748665f7aa177b6a0f2cc7f (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
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
---
- name: fetch node configmap
  oc_configmap:
    name: "{{ openshift_node_group_name }}"
    namespace: "{{ openshift_node_group_namespace }}"
    state: list
  register: configout
  run_once: true

- name: debug node config
  debug: var=configout

- when:
  - configout.results.results.0 == {} or (configout.results.results.0 != {} and openshift_node_group_edits|length > 0)
  block:
  - name: create a temp dir for this work
    command: mktemp -d /tmp/openshift_node_config-XXXXXX
    register: mktempout
    run_once: true

  - name: create node config template
    template:
      src: node-config.yaml.j2
      dest: "{{ mktempout.stdout }}/node-config.yaml"
    when:
    - configout.results.results.0 == {}

  - name: lay down the config from the existing configmap
    copy:
      content: "{{ configout.results.results.0.data['node-config.yaml'] }}"
      dest: "{{ mktempout.stdout }}/node-config.yaml"
    when:
    - configout.results.results.0 != {}

  - name: "specialize the generated configs for {{ openshift_node_group_name }}"
    yedit:
      content:
      src: "{{ mktempout.stdout }}/node-config.yaml"
      edits: "{{ openshift_node_group_edits }}"
    register: yeditout
    when: openshift_node_group_edits|length > 0
    run_once: true

  - debug: var=yeditout

  - name: create node-config.yaml configmap
    oc_configmap:
      name: "{{ openshift_node_group_name }}"
      namespace: "{{ openshift_node_group_namespace }}"
      from_file:
        node-config.yaml: "{{ mktempout.stdout }}/node-config.yaml"
    run_once: true

  - name: remove templated files
    file:
      dest: "{{ mktempout.stdout }}/"
      state: absent
    run_once: true