- name: "node/config.yml, populate oo_hosts_to_config host group if needed" hosts: localhost gather_facts: no tasks: - name: Evaluate oo_host_group_exp add_host: "name={{ item }} groups=oo_hosts_to_config" with_items: "{{ oo_host_group_exp | default('') }}" when: oo_host_group_exp is defined - name: "Gather facts for masters in {{ oo_env }}" hosts: "tag_env-host-type-{{ oo_env }}-openshift-master" connection: ssh user: root gather_facts: yes tasks: - command: 'curl "http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip" -H "Metadata-Flavor: Google"' register: output - set_fact: gce_public_ip="{{ output.stdout }}" - name: "Set OO sepcific facts on localhost (for later use)" hosts: localhost gather_facts: no tasks: - name: Setting openshift_master_ips fact on localhost set_fact: openshift_master_ips: "{{ hostvars | oo_select_keys(groups['tag_env-host-type-' + oo_env + '-openshift-master']) | oo_collect(attribute='ansible_default_ipv4.address') }}" when: groups['tag_env-host-type-' + oo_env + '-openshift-master'] is defined - name: Setting openshift_master_public_ips fact on localhost set_fact: openshift_master_public_ips: "{{ hostvars | oo_select_keys(groups['tag_env-host-type-' + oo_env + '-openshift-master']) | oo_collect(attribute='gce_public_ip') }}" when: groups['tag_env-host-type-' + oo_env + '-openshift-master'] is defined - name: "Configure instances" hosts: oo_hosts_to_config connection: ssh user: root vars_files: - vars.yml tasks: - debug: var=gce_public_ip roles: - { role: openshift_node, openshift_master_ips: "{{ hostvars['localhost'].openshift_master_ips | default(['']) }}", openshift_master_public_ips: "{{ hostvars['localhost'].openshift_master_public_ips | default(['']) }}", openshift_public_ip: "{{ gce_public_ip }}", openshift_env: "{{ oo_env }}", } - docker - os_env_extras