123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- ---
- - name: Retrieve list of openshift nodes matching router selector
- oc_obj:
- state: list
- kind: node
- namespace: "{{ openshift.hosted.router.namespace | default('default') }}"
- selector: "{{ openshift.hosted.router.selector | default(omit) }}"
- register: router_nodes
- when: openshift.hosted.router.replicas | default(none) is none
- - name: set_fact replicas
- set_fact:
- replicas: "{{ openshift.hosted.router.replicas|default(None) | get_router_replicas(router_nodes) }}"
- openshift_hosted_router_selector: "{{ openshift.hosted.router.selector | default(None) }}"
- openshift_hosted_router_image: "{{ openshift.hosted.router.registryurl }}"
- - name: Get the certificate contents for router
- copy:
- backup: True
- dest: "/etc/origin/master/{{ item | basename }}"
- src: "{{ item }}"
- with_items: "{{ openshift_hosted_routers | oo_collect(attribute='certificates') |
- oo_select_keys_from_list(['keyfile', 'certfile', 'cafile']) }}"
- - name: Create OpenShift router
- oc_adm_router:
- name: "{{ item.name }}"
- replicas: "{{ item.replicas }}"
- namespace: "{{ item.namespace | default('default') }}"
- # This option is not yet implemented
- # force_subdomain: "{{ openshift.hosted.router.force_subdomain | default(none) }}"
- service_account: "{{ item.serviceaccount | default('router') }}"
- selector: "{{ item.selector | default(none) }}"
- images: "{{ item.images | default(omit) }}"
- cert_file: "{{ ('/etc/origin/master/' ~ (item.certificates.certfile | basename)) if 'certfile' in item.certificates else omit }}"
- key_file: "{{ ('/etc/origin/master/' ~ (item.certificates.keyfile | basename)) if 'keyfile' in item.certificates else omit }}"
- cacert_file: "{{ ('/etc/origin/master/' ~ (item.certificates.cafile | basename)) if 'cafile' in item.certificates else omit }}"
- edits: "{{ openshift_hosted_router_edits | union(item.edits) }}"
- with_items: "{{ openshift_hosted_routers }}"
- register: routerout
- # This should probably move to module
- - name: wait for deploy
- pause:
- seconds: 30
- when: routerout.changed
- - name: Ensure router replica count matches desired
- oc_scale:
- kind: dc
- name: "{{ item.name | default('router') }}"
- namespace: "{{ item.namespace | default('default') }}"
- replicas: "{{ item.replicas }}"
- with_items: "{{ openshift_hosted_routers }}"
|