infra updates
This commit is contained in:
parent
0edb581bd5
commit
6afa79fe7f
16 changed files with 1506 additions and 1394 deletions
|
|
@ -66,3 +66,8 @@ reboot:
|
|||
|
||||
qc-web:
|
||||
$(ANSIBLE_CMD) -l qc_web -t caddy general.yml
|
||||
|
||||
install-collections:
|
||||
ansible-galaxy collection install -r requirements.yml --force
|
||||
ansible-galaxy role install -r roles/requirements.yml --force
|
||||
./scripts/fix-deprecated-imports.sh
|
||||
|
|
|
|||
|
|
@ -17,6 +17,10 @@ fi
|
|||
# Install required collections
|
||||
echo "Installing Ansible collections..."
|
||||
ansible-galaxy collection install -r requirements.yml
|
||||
echo "Fixing deprecated imports in collections..."
|
||||
./scripts/fix-deprecated-imports.sh
|
||||
echo "Fixing deprecated imports in collections..."
|
||||
./scripts/fix-deprecated-imports.sh
|
||||
|
||||
# Step 1: Create VM template
|
||||
echo "Step 1: Creating Debian 12 cloud-init template on Proxmox..."
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@ monitor.vntx.net
|
|||
[home_servers]
|
||||
skippy.w5isp.com
|
||||
sync.w5isp.com ansible_host=204.110.191.216
|
||||
g.w5isp.com
|
||||
g.w5isp.com ansible_host=204.110.191.5
|
||||
dokku.w5isp.com
|
||||
camper
|
||||
|
||||
[k3s_servers]
|
||||
|
|
@ -28,7 +29,7 @@ camper
|
|||
sync.w5isp.com
|
||||
|
||||
[caddy_servers]
|
||||
g.w5isp.com
|
||||
g.w5isp.com ansible_host=204.110.191.5
|
||||
skippy.w5isp.com
|
||||
|
||||
[syncthing_servers]
|
||||
|
|
|
|||
|
|
@ -86,6 +86,10 @@
|
|||
|
||||
- name: Tailscale
|
||||
hosts: tailscale_home
|
||||
become: true
|
||||
gather_facts: true
|
||||
vars:
|
||||
inject_facts_as_vars: false
|
||||
roles:
|
||||
- role: artis3n.tailscale
|
||||
vars:
|
||||
|
|
|
|||
|
|
@ -1,13 +1,15 @@
|
|||
---
|
||||
collections:
|
||||
# Use latest versions - minimum versions ensure compatibility
|
||||
- name: community.general
|
||||
version: ">=8.0.0"
|
||||
version: ">=12.0.0" # Updated from >=8.0.0 - current: 12.1.0
|
||||
- name: ansible.posix
|
||||
version: ">=2.0.0" # Added version constraint - current: 2.1.0
|
||||
- name: kubernetes.core
|
||||
version: ">=2.4.0"
|
||||
version: ">=6.0.0" # Updated from >=2.4.0 - current: 6.2.0
|
||||
|
||||
roles:
|
||||
- name: geerlingguy.docker
|
||||
version: "6.1.0"
|
||||
version: ">=6.1.0" # Changed to >= to allow updates
|
||||
- name: geerlingguy.kubernetes
|
||||
version: "8.0.0" # This role supports K8s 1.30+
|
||||
version: ">=8.0.0" # Changed to >= to allow updates - supports K8s 1.30+
|
||||
|
|
@ -7,7 +7,7 @@ admin_group_map:
|
|||
RedHat: wheel
|
||||
Alpine: wheel
|
||||
|
||||
admin_group: "{{ admin_group_map.get(ansible_os_family, 'sudo') }}"
|
||||
admin_group: "{{ admin_group_map.get(ansible_facts['os_family'], 'sudo') }}"
|
||||
|
||||
base_common_packages:
|
||||
- git
|
||||
|
|
|
|||
|
|
@ -4,17 +4,17 @@
|
|||
# Initial system information
|
||||
- name: Show hostname
|
||||
debug:
|
||||
msg: "{{ ansible_hostname }}"
|
||||
msg: "{{ ansible_facts['hostname'] }}"
|
||||
|
||||
- name: Show IPv4 address
|
||||
debug:
|
||||
msg: "{{ ansible_default_ipv4.address }}"
|
||||
when: ansible_default_ipv4.address is defined
|
||||
msg: "{{ ansible_facts['default_ipv4']['address'] }}"
|
||||
when: ansible_facts['default_ipv4']['address'] is defined
|
||||
|
||||
- name: Show IPv6 address
|
||||
debug:
|
||||
msg: "{{ ansible_default_ipv6.address }}"
|
||||
when: ansible_default_ipv6.address is defined
|
||||
msg: "{{ ansible_facts['default_ipv6']['address'] }}"
|
||||
when: ansible_facts['default_ipv6']['address'] is defined
|
||||
|
||||
# Base package installation
|
||||
- import_tasks: packages.yml
|
||||
|
|
@ -37,12 +37,12 @@
|
|||
# OS-specific configurations
|
||||
- include_role:
|
||||
name: almalinux
|
||||
when: ansible_os_family == "RedHat"
|
||||
when: ansible_facts['os_family'] == "RedHat"
|
||||
|
||||
- include_role:
|
||||
name: debian
|
||||
when: ansible_os_family == "Debian"
|
||||
when: ansible_facts['os_family'] == "Debian"
|
||||
|
||||
- include_role:
|
||||
name: alpine
|
||||
when: ansible_os_family == "Alpine"
|
||||
when: ansible_facts['os_family'] == "Alpine"
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@
|
|||
ansible.builtin.set_fact:
|
||||
base_packages_combined: >-
|
||||
{{ (base_common_packages
|
||||
+ base_packages_by_os_family.get(ansible_os_family, [])
|
||||
+ base_packages_by_distribution.get(ansible_distribution, [])) | unique }}
|
||||
+ base_packages_by_os_family.get(ansible_facts['os_family'], [])
|
||||
+ base_packages_by_distribution.get(ansible_facts['distribution'], [])) | unique }}
|
||||
tags:
|
||||
- packages
|
||||
- common
|
||||
|
|
|
|||
|
|
@ -1,4 +1,6 @@
|
|||
- src: graylog2.graylog
|
||||
- src: caddy_ansible.caddy_ansible
|
||||
- src: m4rcu5nl.zerotier-one
|
||||
- src: bertvv.bind
|
||||
- src: https://github.com/artis3n/tailscale.git
|
||||
version: v5.0.1
|
||||
name: artis3n.tailscale
|
||||
|
|
|
|||
44
ansible/scripts/fix-deprecated-imports.sh
Executable file
44
ansible/scripts/fix-deprecated-imports.sh
Executable file
|
|
@ -0,0 +1,44 @@
|
|||
#!/bin/bash
|
||||
# Script to fix deprecated ansible.module_utils._text imports in collections
|
||||
# This replaces the deprecated imports with the new recommended imports
|
||||
|
||||
set -e
|
||||
|
||||
COLLECTIONS_DIR="${HOME}/.ansible/collections/ansible_collections"
|
||||
|
||||
# Function to fix imports in a file
|
||||
fix_imports() {
|
||||
local file="$1"
|
||||
|
||||
# Replace: from ansible.module_utils._text import to_native
|
||||
# With: from ansible.module_utils.common.text.converters import to_native
|
||||
sed -i '' \
|
||||
-e "s/from ansible.module_utils._text import to_native/from ansible.module_utils.common.text.converters import to_native/g" \
|
||||
-e "s/from ansible.module_utils._text import to_text/from ansible.module_utils.common.text.converters import to_text/g" \
|
||||
-e "s/from ansible.module_utils._text import to_bytes/from ansible.module_utils.common.text.converters import to_bytes/g" \
|
||||
-e "s/from ansible.module_utils._text import to_native, to_text/from ansible.module_utils.common.text.converters import to_native, to_text/g" \
|
||||
-e "s/from ansible.module_utils._text import to_bytes, to_native/from ansible.module_utils.common.text.converters import to_bytes, to_native/g" \
|
||||
-e "s/from ansible.module_utils._text import to_bytes, to_text/from ansible.module_utils.common.text.converters import to_bytes, to_text/g" \
|
||||
-e "s/from ansible.module_utils._text import to_native, to_text/from ansible.module_utils.common.text.converters import to_native, to_text/g" \
|
||||
"$file"
|
||||
}
|
||||
|
||||
# Find all Python files with deprecated imports
|
||||
echo "Searching for files with deprecated imports..."
|
||||
FILES=$(grep -r "from ansible.module_utils._text import" "$COLLECTIONS_DIR" --include="*.py" 2>/dev/null | cut -d: -f1 | sort -u)
|
||||
|
||||
if [ -z "$FILES" ]; then
|
||||
echo "No files found with deprecated imports."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "Found $(echo "$FILES" | wc -l | tr -d ' ') files to fix."
|
||||
|
||||
# Fix each file
|
||||
for file in $FILES; do
|
||||
echo "Fixing: $file"
|
||||
fix_imports "$file"
|
||||
done
|
||||
|
||||
echo "Done! Fixed all deprecated imports."
|
||||
|
||||
32
home/terraform/.terraform.lock.hcl
generated
32
home/terraform/.terraform.lock.hcl
generated
|
|
@ -2,25 +2,25 @@
|
|||
# Manual edits may be lost in future updates.
|
||||
|
||||
provider "registry.opentofu.org/cloudflare/cloudflare" {
|
||||
version = "4.52.2"
|
||||
version = "4.52.5"
|
||||
constraints = "~> 4.0"
|
||||
hashes = [
|
||||
"h1:nFaCutAjRKkGsRsRH0kMdJCZMslrdAHaJI1XxAgkjPo=",
|
||||
"zh:08238aa3fdcfb89697c84c7777004eb26b069c17117bef75b0e70aec5019dea2",
|
||||
"zh:12d7f25f8722f941bca10e30fc8cdea470d92f83fbdfb7d1476df6612895c1d1",
|
||||
"zh:236865850d06bb790b8d6fa579eee5866ef92ea8dd9f1c836a5946eb18195e0b",
|
||||
"zh:52ae35d6260609931402d44d3d946384c84c5b5ad25e3b5cc5b6644765e1b25c",
|
||||
"zh:67be160b7c3277fbfaa595aff4186f74067af0735f613f4fe037dabe58fc2e5f",
|
||||
"zh:6e1492149084b277be4f65cd3a0c08794ba63b42211148575c709187635047d8",
|
||||
"zh:716c00b62ac6c30fb9ee24d69d89fa6a6465e272d1caf5adb3c9b6b43a152e6b",
|
||||
"zh:7c3b6cbe12d73727e18606901875541b1f0f56ca506400434399813ea9b56686",
|
||||
"zh:7cd7806cc9eb62475b6c0c2bf7520a1ff204b96ce62390941d474cbaa480207b",
|
||||
"h1:+rfzF+16ZcWZWnTyW/p1HHTzYbPKX8Zt2nIFtR/+f+E=",
|
||||
"zh:1a3400cb38863b2585968d1876706bcfc67a148e1318a1d325c6c7704adc999b",
|
||||
"zh:4c5062cb9e9da1676f06ae92b8370186d98976cc4c7030d3cd76df12af54282a",
|
||||
"zh:52110f493b5f0587ef77a1cfd1a67001fd4c617b14c6502d732ab47352bdc2f7",
|
||||
"zh:5aa536f9eaeb43823aaf2aa80e7d39b25ef2b383405ed034aa16a28b446a9238",
|
||||
"zh:5cc39459a1c6be8a918f17054e4fbba573825ed5597dcada588fe99614d98a5b",
|
||||
"zh:629ae6a7ba298815131da826474d199312d21cec53a4d5ded4fa56a692e6f072",
|
||||
"zh:719cc7c75dc1d3eb30c22ff5102a017996d9788b948078c7e1c5b3446aeca661",
|
||||
"zh:8698635a3ca04383c1e93b21d6963346bdae54d27177a48e4b1435b7f731731c",
|
||||
"zh:890df766e9b839623b1f0437355032a3c006226a6c200cd911e15ee1a9014e9f",
|
||||
"zh:98bca149a0535cbb8bdc5fe1c173237dde4b184f085bb7d592f5bf1842ff293e",
|
||||
"zh:b1b8b0161f06f1c013d8697deee2d92e44025e1218262ea4fb071f6864304629",
|
||||
"zh:cb857d44e4f707be2bed0d8eb2178b9e7a7422e5416e92929da7ec7c2c0d7451",
|
||||
"zh:d34490872248369c8da4ff77f96fe089c4bae6fb1b17632e76c6b115726058db",
|
||||
"zh:f993f7dafaa3c6a4f9ff8b50af0af74357d2e2b83526d5f18a788bdbd4b41615",
|
||||
"zh:8a9993f1dcadf1dd6ca43b23348abe374605d29945a2fafc07fb3457644e6a54",
|
||||
"zh:b1b9a1e6bcc24d5863a664a411d2dc906373ae7a2399d2d65548ce7377057852",
|
||||
"zh:b270184cdeec277218e84b94cb136fead753da717f9b9dc378e51907f3f00bb0",
|
||||
"zh:dff2bc10071210181726ce270f954995fe42c696e61e2e8f874021fed02521e5",
|
||||
"zh:e8e87b40b6a87dc097b0fdc20d3f725cec0d82abc9cc3755c1f89f8f6e8b0036",
|
||||
"zh:ee964a6573d399a5dd22ce328fb38ca1207797a02248f14b2e4913ee390e7803",
|
||||
]
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,79 +1,89 @@
|
|||
resource "dnsimple_zone_record" "manero_root_a_1" {
|
||||
zone_name = "manero.org"
|
||||
name = "@"
|
||||
value = "185.199.108.153"
|
||||
resource "porkbun_dns_record" "manero_root_a_1" {
|
||||
domain = "manero.org"
|
||||
name = ""
|
||||
content = "185.199.108.153"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_root_a_2" {
|
||||
zone_name = "manero.org"
|
||||
name = "@"
|
||||
value = "185.199.109.153"
|
||||
resource "porkbun_dns_record" "manero_root_a_2" {
|
||||
domain = "manero.org"
|
||||
name = ""
|
||||
content = "185.199.109.153"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_root_a_3" {
|
||||
zone_name = "manero.org"
|
||||
name = "@"
|
||||
value = "185.199.110.153"
|
||||
resource "porkbun_dns_record" "manero_root_a_3" {
|
||||
domain = "manero.org"
|
||||
name = ""
|
||||
content = "185.199.110.153"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_root_a_4" {
|
||||
zone_name = "manero.org"
|
||||
name = "@"
|
||||
value = "185.199.111.153"
|
||||
resource "porkbun_dns_record" "manero_root_a_4" {
|
||||
domain = "manero.org"
|
||||
name = ""
|
||||
content = "185.199.111.153"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_irc_a" {
|
||||
zone_name = "manero.org"
|
||||
resource "porkbun_dns_record" "manero_irc_a" {
|
||||
domain = "manero.org"
|
||||
name = "irc"
|
||||
value = "149.28.242.178"
|
||||
content = "149.28.242.178"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_us_a" {
|
||||
zone_name = "manero.org"
|
||||
resource "porkbun_dns_record" "manero_us_a" {
|
||||
domain = "manero.org"
|
||||
name = "us"
|
||||
value = "149.28.242.178"
|
||||
content = "149.28.242.178"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_us_aaaa" {
|
||||
zone_name = "manero.org"
|
||||
resource "porkbun_dns_record" "manero_us_aaaa" {
|
||||
domain = "manero.org"
|
||||
name = "us"
|
||||
value = "2001:19f0:6401:19e6:5400:5ff:fe45:5701"
|
||||
content = "2001:19f0:6401:19e6:5400:5ff:fe45:5701"
|
||||
type = "AAAA"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_ca_a" {
|
||||
zone_name = "manero.org"
|
||||
resource "porkbun_dns_record" "manero_ca_a" {
|
||||
domain = "manero.org"
|
||||
name = "ca"
|
||||
value = "167.114.209.151"
|
||||
content = "167.114.209.151"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_tankfox_a" {
|
||||
zone_name = "manero.org"
|
||||
resource "porkbun_dns_record" "manero_tankfox_a" {
|
||||
domain = "manero.org"
|
||||
name = "tankfox"
|
||||
value = "137.184.202.89"
|
||||
content = "137.184.202.89"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "manero_404" {
|
||||
zone_name = "manero.org"
|
||||
resource "porkbun_dns_record" "manero_404" {
|
||||
domain = "manero.org"
|
||||
name = "404"
|
||||
value = "404.al"
|
||||
content = "404.al"
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ resource "dnsimple_zone_record" "mcintire_cname_test" {
|
|||
resource "dnsimple_zone_record" "mcintire_mail" {
|
||||
zone_name = "mcintire.me"
|
||||
name = "mail"
|
||||
value = "66.206.18.162"
|
||||
value = "204.110.191.5"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
}
|
||||
|
|
@ -70,7 +70,7 @@ resource "dnsimple_zone_record" "mcintire_autoconfig" {
|
|||
resource "dnsimple_zone_record" "mcintire_spf_mailcow" {
|
||||
zone_name = "mcintire.me"
|
||||
name = ""
|
||||
value = "\"v=spf1 mx a ip4:66.206.18.162 ~all\""
|
||||
value = "\"v=spf1 mx a ip4:204.110.191.5 ~all\""
|
||||
type = "TXT"
|
||||
ttl = 3600
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ resource "powerdns_record" "ptr_records4" {
|
|||
for_each = {
|
||||
for i in range(256) : tostring(i) => {
|
||||
name = "${i}.191.110.204.in-addr.arpa."
|
||||
record = tostring(i) == "216" ? "mail.w5isp.com." : "${i}.191.client.vntx.net."
|
||||
record = tostring(i) == "5" ? "mail.w5isp.com." : "${i}.191.client.vntx.net."
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -1,204 +1,245 @@
|
|||
resource "dnsimple_zone_record" "w5isp_root" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_root" {
|
||||
domain = "w5isp.com"
|
||||
name = ""
|
||||
value = "66.206.18.162"
|
||||
content = "204.110.191.5"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_git" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_git" {
|
||||
domain = "w5isp.com"
|
||||
name = "git"
|
||||
value = "66.206.18.163"
|
||||
content = "66.206.18.163"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_home" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_home" {
|
||||
domain = "w5isp.com"
|
||||
name = "home"
|
||||
value = "204.110.191.1"
|
||||
content = "204.110.191.1"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_photos" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_photos" {
|
||||
domain = "w5isp.com"
|
||||
name = "photos"
|
||||
value = "204.110.191.8"
|
||||
content = "204.110.191.8"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_skippy" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_skippy" {
|
||||
domain = "w5isp.com"
|
||||
name = "skippy"
|
||||
value = "204.110.191.8"
|
||||
content = "204.110.191.8"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_ha" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_ha" {
|
||||
domain = "w5isp.com"
|
||||
name = "ha"
|
||||
value = "q1l09qiycnaagngmjsg1qas0rhqcfoou.ui.nabu.casa"
|
||||
content = "q1l09qiycnaagngmjsg1qas0rhqcfoou.ui.nabu.casa"
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_mx1" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_mx1" {
|
||||
domain = "w5isp.com"
|
||||
name = ""
|
||||
priority = 10
|
||||
value = "mail.w5isp.com"
|
||||
content = "mail.w5isp.com"
|
||||
type = "MX"
|
||||
ttl = 3600
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_txt" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_txt" {
|
||||
domain = "w5isp.com"
|
||||
name = ""
|
||||
value = "v=spf1 mx a ip4:66.206.18.162 ~all"
|
||||
content = "v=spf1 mx a ip4:204.110.191.5 ~all"
|
||||
type = "TXT"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
# DKIM record
|
||||
resource "dnsimple_zone_record" "w5isp_dkim" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_dkim" {
|
||||
domain = "w5isp.com"
|
||||
name = "dkim._domainkey"
|
||||
value = "v=DKIM1;k=rsa;t=s;s=email;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxti2t8TvzIqKF9BpKn3rQExKg3sS1SyQuwtQgL0r/ELEJ0D9cKU/iM+eB1ROJctKHoMqKDJoRCMP6eibFcgq2kLKqf+aceEOIBx2OK2WCXML+CNqQZA6yO+A8/Jq7iFZPq8D5FmOoxbwRZkso7CkSennSz/+F7nBPI/OfyEiiI4xJzWH3t8SaAkkcy46O+1K0iCkTpsthon7E2PHa3SPkrjbep/5NImTJLK5LuffiLJtLsiK+73mvsAYCDmrNxPTaDjXkj0TWdKl/d/TnlVJl+YloqWIDt/7LtZQM0C7GZ9flIr7z9hHpSWERXAA5Gj5NQ0/hcY3nF4dPoqWs3VeeQIDAQAB"
|
||||
content = "v=DKIM1;k=rsa;t=s;s=email;p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxti2t8TvzIqKF9BpKn3rQExKg3sS1SyQuwtQgL0r/ELEJ0D9cKU/iM+eB1ROJctKHoMqKDJoRCMP6eibFcgq2kLKqf+aceEOIBx2OK2WCXML+CNqQZA6yO+A8/Jq7iFZPq8D5FmOoxbwRZkso7CkSennSz/+F7nBPI/OfyEiiI4xJzWH3t8SaAkkcy46O+1K0iCkTpsthon7E2PHa3SPkrjbep/5NImTJLK5LuffiLJtLsiK+73mvsAYCDmrNxPTaDjXkj0TWdKl/d/TnlVJl+YloqWIDt/7LtZQM0C7GZ9flIr7z9hHpSWERXAA5Gj5NQ0/hcY3nF4dPoqWs3VeeQIDAQAB"
|
||||
type = "TXT"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_g" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_g" {
|
||||
domain = "w5isp.com"
|
||||
name = "g"
|
||||
value = "66.206.18.162"
|
||||
content = "204.110.191.5"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_truck" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_truck" {
|
||||
domain = "w5isp.com"
|
||||
name = "truck"
|
||||
value = "g.w5isp.com."
|
||||
content = "g.w5isp.com."
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_sendgrid1" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_sendgrid1" {
|
||||
domain = "w5isp.com"
|
||||
name = "em40"
|
||||
value = "u177982.wl233.sendgrid.net"
|
||||
content = "u177982.wl233.sendgrid.net"
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_sendgrid2" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_sendgrid2" {
|
||||
domain = "w5isp.com"
|
||||
name = "s1._domainkey"
|
||||
value = "s1.domainkey.u177982.wl233.sendgrid.net."
|
||||
content = "s1.domainkey.u177982.wl233.sendgrid.net."
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_sendgrid3" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_sendgrid3" {
|
||||
domain = "w5isp.com"
|
||||
name = "s2._domainkey"
|
||||
value = "s2.domainkey.u177982.wl233.sendgrid.net."
|
||||
content = "s2.domainkey.u177982.wl233.sendgrid.net."
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_dmarc" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_dmarc" {
|
||||
domain = "w5isp.com"
|
||||
name = "_dmarc"
|
||||
value = "v=DMARC1; p=quarantine; rua=mailto:postmaster@w5isp.com; ruf=mailto:postmaster@w5isp.com; fo=1"
|
||||
content = "v=DMARC1; p=quarantine; rua=mailto:postmaster@w5isp.com; ruf=mailto:postmaster@w5isp.com; fo=1"
|
||||
type = "TXT"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
# Mail server
|
||||
resource "dnsimple_zone_record" "w5isp_mail" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_mail" {
|
||||
domain = "w5isp.com"
|
||||
name = "mail"
|
||||
value = "66.206.18.162"
|
||||
content = "204.110.191.5"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_sync" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_sync" {
|
||||
domain = "w5isp.com"
|
||||
name = "sync"
|
||||
value = "204.110.191.216"
|
||||
content = "204.110.191.216"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_log" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_log" {
|
||||
domain = "w5isp.com"
|
||||
name = "log"
|
||||
value = "g.w5isp.com"
|
||||
content = "g.w5isp.com"
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_autodiscover" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_autodiscover" {
|
||||
domain = "w5isp.com"
|
||||
name = "autodiscover"
|
||||
value = "mail.w5isp.com"
|
||||
content = "mail.w5isp.com"
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_autodiscover_srv" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_autodiscover_srv" {
|
||||
domain = "w5isp.com"
|
||||
name = "_autodiscover._tcp"
|
||||
value = "0 443 mail.w5isp.com"
|
||||
content = "0 443 mail.w5isp.com"
|
||||
type = "SRV"
|
||||
priority = 0
|
||||
ttl = 3600
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_autoconfig" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_autoconfig" {
|
||||
domain = "w5isp.com"
|
||||
name = "autoconfig"
|
||||
value = "mail.w5isp.com"
|
||||
content = "mail.w5isp.com"
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_n8n" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_n8n" {
|
||||
domain = "w5isp.com"
|
||||
name = "n8n"
|
||||
value = "204.110.191.2" # Traefik ingress on k3s cluster
|
||||
content = "204.110.191.2" # Traefik ingress on k3s cluster
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_nodered" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_nodered" {
|
||||
domain = "w5isp.com"
|
||||
name = "nodered"
|
||||
value = "204.110.191.2" # Node-RED via Traefik on k3s cluster
|
||||
content = "204.110.191.2" # Node-RED via Traefik on k3s cluster
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_headscale" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_headscale" {
|
||||
domain = "w5isp.com"
|
||||
name = "headscale"
|
||||
value = "66.206.18.166"
|
||||
content = "66.206.18.166"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "dnsimple_zone_record" "w5isp_hs" {
|
||||
zone_name = "w5isp.com"
|
||||
resource "porkbun_dns_record" "w5isp_hs" {
|
||||
domain = "w5isp.com"
|
||||
name = "hs"
|
||||
value = "66.206.18.166"
|
||||
content = "66.206.18.166"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "porkbun_dns_record" "w5isp_dokku" {
|
||||
domain = "w5isp.com"
|
||||
name = "dokku"
|
||||
content = "204.110.191.218"
|
||||
type = "A"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
||||
resource "porkbun_dns_record" "w5isp_camper" {
|
||||
domain = "w5isp.com"
|
||||
name = "camper"
|
||||
content = "skippy.w5isp.com."
|
||||
type = "CNAME"
|
||||
ttl = 3600
|
||||
priority = 0
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue