Improve ansible stuff and prepare caddy
This commit is contained in:
		
							parent
							
								
									2d8c670110
								
							
						
					
					
						commit
						3b9ed6a4f4
					
				
					 10 changed files with 83 additions and 42 deletions
				
			
		
							
								
								
									
										11
									
								
								_ansible/roles/caddy/tasks/clean-sites.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								_ansible/roles/caddy/tasks/clean-sites.yml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
- name: Find caddy site configs, but exclude managed sites
 | 
			
		||||
  ansible.builtin.find:
 | 
			
		||||
    paths: "{{ caddy_config_path }}"
 | 
			
		||||
    excludes: "{{ managed_sites | default([]) }}"
 | 
			
		||||
  register: files_to_delete
 | 
			
		||||
 | 
			
		||||
- name: Remove unmanaged sites
 | 
			
		||||
  file:
 | 
			
		||||
    path: "{{ item.path }}"
 | 
			
		||||
    state: absent
 | 
			
		||||
  with_items: "{{ files_to_delete.files }}"
 | 
			
		||||
							
								
								
									
										11
									
								
								_ansible/roles/caddy/tasks/main.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								_ansible/roles/caddy/tasks/main.yml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,11 @@
 | 
			
		|||
---
 | 
			
		||||
- name: Deploy {{ svc.name }}
 | 
			
		||||
  tags:
 | 
			
		||||
    - caddy
 | 
			
		||||
    - reverse_proxy
 | 
			
		||||
    - webserver
 | 
			
		||||
  block:
 | 
			
		||||
    - import_tasks: deploy-common-service.yml
 | 
			
		||||
 | 
			
		||||
    - import_tasks: clean-sites.yml
 | 
			
		||||
    - import_tasks: reload-caddy.yml
 | 
			
		||||
							
								
								
									
										16
									
								
								_ansible/roles/caddy/tasks/reload-caddy.yml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								_ansible/roles/caddy/tasks/reload-caddy.yml
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,16 @@
 | 
			
		|||
- name: Check caddy configuration
 | 
			
		||||
  ansible.builtin.command:
 | 
			
		||||
    cmd: docker compose exec app sh -c "caddy validate --config /etc/caddy/Caddyfile"
 | 
			
		||||
    chdir: "{{ service_path }}"
 | 
			
		||||
  when: "'local-dev' != inventory_hostname"
 | 
			
		||||
  register: cmd_result
 | 
			
		||||
  changed_when: false
 | 
			
		||||
 | 
			
		||||
- name: Reload caddy configuration
 | 
			
		||||
  ansible.builtin.command:
 | 
			
		||||
    cmd: docker compose exec app sh -c "caddy reload --config /etc/caddy/Caddyfile"
 | 
			
		||||
    chdir: "{{ service_path }}"
 | 
			
		||||
  when:
 | 
			
		||||
    - "'local-dev' != inventory_hostname"
 | 
			
		||||
    - cmd_result.rc == 0
 | 
			
		||||
  changed_when: true # TODO find a way to detect changes
 | 
			
		||||
		Reference in a new issue