66 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			66 lines
		
	
	
	
		
			1.4 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| SHELL := /bin/bash
 | |
| 
 | |
| TAGS ?= all
 | |
| 
 | |
| PWD := $(shell pwd)
 | |
| 
 | |
| .FORCE:
 | |
| 
 | |
| ./inventory/group_vars/all/all_services.yml: .FORCE
 | |
| 	tofu output --json services \
 | |
| 		| yq -y '{all_services: .}' \
 | |
| 		> ./inventory/group_vars/all/all_services.yml
 | |
| 
 | |
| ./inventory/group_vars/all/opentofu.yml: .FORCE
 | |
| 	tofu output --json \
 | |
| 		| yq -y '{opentofu: with_entries(.value |= .value)}' \
 | |
| 		> ./inventory/group_vars/all/opentofu.yml
 | |
| 
 | |
| ./dns/hosts.json: .FORCE
 | |
| 	tofu output --json hosts \
 | |
| 		> ./dns/hosts.json
 | |
| 
 | |
| ./dns/services.json: ./inventory/group_vars/all/all_services.yml
 | |
| 	ansible-playbook \
 | |
| 		-e services_json_file=$(PWD)/dns/services.json \
 | |
| 		playbooks/create-services-for-dnscontrol.yml
 | |
| 
 | |
| ./dns/dkim-ses.json: .FORCE
 | |
| 	tofu output --json aws_ses_dkim \
 | |
| 		> ./dns/dkim-ses.json
 | |
| 
 | |
| 
 | |
| output-dns: ./dns/hosts.json ./dns/services.json ./dns/dkim-ses.json
 | |
| 
 | |
| output-ansible: ./inventory/group_vars/all/opentofu.yml
 | |
| 
 | |
| output: output-dns output-ansible
 | |
| 
 | |
| ./types-dnscontrol.d.ts:
 | |
| 	dnscontrol write-types
 | |
| 
 | |
| tofu:
 | |
| 	tofu apply
 | |
| 	@printf "\n=====\n\n"
 | |
| 	$(MAKE) output
 | |
| 
 | |
| dns: output-dns
 | |
| 	dnscontrol push
 | |
| 
 | |
| dns-check: output-dns
 | |
| 	dnscontrol check-creds ovh
 | |
| 
 | |
| tofu-dns:
 | |
| 	$(MAKE) tofu
 | |
| 	$(MAKE) dns
 | |
| 
 | |
| all:
 | |
| 	$(MAKE) tofu-dns
 | |
| 	@printf "\n=====\n\n"
 | |
| 	ansible-playbook ./playbooks/stop-and-backup-unused.yml -t $(TAGS)
 | |
| 	ansible-playbook ./playbooks/serguzim.net.yml -t $(TAGS)
 | |
| 	$(MAKE) visualize
 | |
| 
 | |
| visualize:
 | |
| 	./visualize.py | d2 - infrastructure.svg
 | |
| 
 |