Change order (test timing of handler)
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			This commit is contained in:
		| @@ -1,91 +1,87 @@ | ||||
| - block: | ||||
| - name: Gather service facts | ||||
|   ansible.builtin.service_facts: | ||||
|     # Module requires no attributes | ||||
|  | ||||
|     - name: Gather service facts | ||||
|       ansible.builtin.service_facts: | ||||
|         # Module requires no attributes | ||||
| - name: Install K3s | ||||
|   ansible.builtin.command: | ||||
|     cmd: ./install.sh | ||||
|     chdir: /opt/metacluster/k3s | ||||
|   environment: | ||||
|     INSTALL_K3S_SKIP_DOWNLOAD: 'true' | ||||
|     INSTALL_K3S_EXEC: 'server --cluster-init --disable local-storage' | ||||
|   when: ansible_facts.services['k3s.service'] is undefined | ||||
|  | ||||
|     - name: Install K3s | ||||
|       ansible.builtin.command: | ||||
|         cmd: ./install.sh | ||||
|         chdir: /opt/metacluster/k3s | ||||
|       environment: | ||||
|         INSTALL_K3S_SKIP_DOWNLOAD: 'true' | ||||
|         INSTALL_K3S_EXEC: 'server --cluster-init --disable local-storage' | ||||
|       when: ansible_facts.services['k3s.service'] is undefined | ||||
|  | ||||
|     - name: Ensure API availability | ||||
|       ansible.utils.cli_parse: | ||||
|         command: curl -k https://{{ vapp['guestinfo.ipaddress'] }}:6443/livez?verbose | ||||
|         parser: | ||||
|           name: ansible.utils.json | ||||
|         set_fact: api_readycheck | ||||
|       ignore_errors: yes | ||||
|       until: api_readycheck.apiVersion is defined | ||||
|       retries: 3 | ||||
|       delay: 30 | ||||
|  | ||||
|     - name: Initialize tempfile | ||||
|       ansible.builtin.tempfile: | ||||
|         state: file | ||||
|       register: kubeconfig | ||||
|  | ||||
|     - name: Retrieve kubeconfig | ||||
|       ansible.builtin.command: | ||||
|         cmd: kubectl config view --raw | ||||
|       register: kubectl_config | ||||
|  | ||||
|     - name: Store kubeconfig in tempfile | ||||
|       ansible.builtin.copy: | ||||
|         dest: "{{ kubeconfig.path }}" | ||||
|         content: "{{ kubectl_config.stdout }}" | ||||
|         mode: 0600 | ||||
|       no_log: true | ||||
|  | ||||
|     - name: Configure traefik dashboard ingress | ||||
|       ansible.builtin.template: | ||||
|         src: ingressroute.j2 | ||||
|         dest: /var/lib/rancher/k3s/server/manifests/{{ _template.name }}-manifest.yaml | ||||
|         owner: root | ||||
|         group: root | ||||
|         mode: 0600 | ||||
|       vars: | ||||
|         _template: | ||||
|           name: traefik-dashboard | ||||
|           namespace: kube-system | ||||
|           config: |2 | ||||
|               entryPoints: | ||||
|               - web | ||||
|               - websecure | ||||
|               routes: | ||||
|               - kind: Rule | ||||
|                 match: Host(`ingress.{{ vapp['metacluster.fqdn'] }}`) | ||||
|                 services: | ||||
|                 - kind: TraefikService | ||||
|                   name: api@internal | ||||
|       notify: | ||||
|         - Apply manifests | ||||
|  | ||||
|     - name: Trigger handlers | ||||
|       ansible.builtin.meta: flush_handlers | ||||
| - name: Ensure API availability | ||||
|   ansible.utils.cli_parse: | ||||
|     command: curl -k https://{{ vapp['guestinfo.ipaddress'] }}:6443/livez?verbose | ||||
|     parser: | ||||
|       name: ansible.utils.json | ||||
|     set_fact: api_readycheck | ||||
|   ignore_errors: yes | ||||
|   until: api_readycheck.apiVersion is defined | ||||
|   retries: 3 | ||||
|   delay: 30 | ||||
|  | ||||
| - name: Install kubectl tab-completion | ||||
|   ansible.builtin.shell: | ||||
|     cmd: kubectl completion bash | tee /etc/bash_completion.d/kubectl | ||||
|  | ||||
| - block: | ||||
| - name: Extract container images | ||||
|   ansible.builtin.unarchive: | ||||
|     src: /opt/metacluster/container-images/image-tarballs.tgz | ||||
|     dest: /opt/metacluster/container-images | ||||
|     list_files: yes | ||||
|   register: imagetarballs | ||||
|  | ||||
|     - name: Extract container images | ||||
|       ansible.builtin.unarchive: | ||||
|         src: /opt/metacluster/container-images/image-tarballs.tgz | ||||
|         dest: /opt/metacluster/container-images | ||||
|         list_files: yes | ||||
|       register: imagetarballs | ||||
| - name: Import container images | ||||
|   ansible.builtin.command: | ||||
|     cmd: k3s ctr image import {{ item }} | ||||
|     chdir: /opt/metacluster/container-images | ||||
|   loop: "{{ imagetarballs.files }}" | ||||
|  | ||||
|     - name: Import container images | ||||
|       ansible.builtin.command: | ||||
|         cmd: k3s ctr image import {{ item }} | ||||
|         chdir: /opt/metacluster/container-images | ||||
|       loop: "{{ imagetarballs.files }}" | ||||
| - name: Initialize tempfile | ||||
|   ansible.builtin.tempfile: | ||||
|     state: file | ||||
|   register: kubeconfig | ||||
|  | ||||
| - name: Retrieve kubeconfig | ||||
|   ansible.builtin.command: | ||||
|     cmd: kubectl config view --raw | ||||
|   register: kubectl_config | ||||
|  | ||||
| - name: Store kubeconfig in tempfile | ||||
|   ansible.builtin.copy: | ||||
|     dest: "{{ kubeconfig.path }}" | ||||
|     content: "{{ kubectl_config.stdout }}" | ||||
|     mode: 0600 | ||||
|   no_log: true | ||||
|  | ||||
| - name: Configure traefik dashboard ingress | ||||
|   ansible.builtin.template: | ||||
|     src: ingressroute.j2 | ||||
|     dest: /var/lib/rancher/k3s/server/manifests/{{ _template.name }}-manifest.yaml | ||||
|     owner: root | ||||
|     group: root | ||||
|     mode: 0600 | ||||
|   vars: | ||||
|     _template: | ||||
|       name: traefik-dashboard | ||||
|       namespace: kube-system | ||||
|       config: |2 | ||||
|           entryPoints: | ||||
|           - web | ||||
|           - websecure | ||||
|           routes: | ||||
|           - kind: Rule | ||||
|             match: Host(`ingress.{{ vapp['metacluster.fqdn'] }}`) | ||||
|             services: | ||||
|             - kind: TraefikService | ||||
|               name: api@internal | ||||
|   notify: | ||||
|     - Apply manifests | ||||
|  | ||||
| - name: Trigger handlers | ||||
|   ansible.builtin.meta: flush_handlers | ||||
|  | ||||
| - name: Create component entries in /etc/hosts | ||||
|   ansible.builtin.lineinfile: | ||||
|   | ||||
		Reference in New Issue
	
	Block a user