12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- ---
- - name: Create machineset_name
- set_fact:
- machineset_name: "{{ item.metadata.name ~ '-centos'}}"
- - name: Update machineset definition
- set_fact:
- machineset: "{{ item | combine(dict_edit, recursive=True) }}"
- vars:
- dict_edit:
- metadata:
- name: "{{ machineset_name }}"
- resourceVersion: ""
- spec:
- selector:
- matchLabels:
- machine.openshift.io/cluster-api-machineset: "{{ machineset_name }}"
- template:
- metadata:
- labels:
- machine.openshift.io/cluster-api-machineset: "{{ machineset_name }}"
- spec:
- providerSpec:
- value:
- ami:
- id: "{{ openshift_aws_scaleup_ami }}"
- keyName: "{{ openshift_aws_scaleup_key }}"
- - name: Import machineset definition
- k8s:
- kubeconfig: "{{ kubeconfig_path }}"
- definition: "{{ machineset | to_yaml }}"
- - name: wait for machine to be created
- k8s_facts:
- api_version: machine.openshift.io/v1beta1
- kubeconfig: "{{ kubeconfig_path }}"
- namespace: openshift-machine-api
- kind: Machine
- label_selectors:
- - "machine.openshift.io/cluster-api-machineset={{ machineset_name }}"
- register: new_machine
- retries: 36
- delay: 5
- until:
- - new_machine.resources is defined
- - new_machine.resources | length > 0
- - new_machine.resources[0].status is defined
- - new_machine.resources[0].status.providerStatus is defined
- - new_machine.resources[0].status.providerStatus.instanceState is defined
- - new_machine.resources[0].status.providerStatus.instanceState == 'running'
- - name: add machine to the inventory
- add_host:
- name: "{{ new_machine.resources[0].status.addresses | selectattr('type', 'match', '^InternalIP$') | map(attribute='address') | first }}"
- node_name: "{{ new_machine.resources[0].status.addresses | selectattr('type', 'match', '^InternalDNS$') | map(attribute='address') | first }}"
- groups: new_workers
- ansible_ssh_common_args: "-o ProxyCommand=\"ssh -o IdentityFile='{{ openshift_aws_scaleup_key_path | default('/opt/app-root/src/.ssh/id_rsa') }}' -o StrictHostKeyChecking=no -W %h:%p -q core@{{ ssh_bastion }}\""
|