# Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - name: deploy ephemeral node using redfish command: >- airshipctl baremetal remotedirect --debug - name: check kubectl version command: >- timeout 20 kubectl \ --kubeconfig {{ airshipctl_config_dir_default | default(ansible_env.HOME) }}/.airship/kubeconfig \ version register: airship_kubecofig_version retries: 100 delay: 50 until: airship_kubecofig_version.rc == 0 - name: debug kubectl version debug: var: airship_kubecofig_version.stdout - name: Wait for all control pods to be created command: >- kubectl get po -n kube-system --selector tier=control-plane \ --kubeconfig {{ airshipctl_config_dir_default | default(ansible_env.HOME) }}/.airship/kubeconfig \ --output=jsonpath='{.items[*].metadata.name}' register: control_pods_created until: item in control_pods_created.stdout retries: 10 delay: 30 with_items: - etcd - kube-apiserver - kube-controller-manager - kube-scheduler - name: Wait for control pods become ready command: >- kubectl wait -n kube-system --for=condition=Ready pods --selector tier=control-plane --timeout=600s \ --kubeconfig {{ airshipctl_config_dir_default | default(ansible_env.HOME) }}/.airship/kubeconfig \ register: control_pods_ready - debug: var=control_pods_ready.stdout_lines