Compare commits

..

2 Commits

Author SHA1 Message Date
b02fa230ec
Updates to dns management. Add .env.dit and .htaccess. 2024-02-24 00:35:11 -05:00
bf80733b1f
Use domain in variable. 2024-02-23 23:23:52 -05:00
4 changed files with 33 additions and 31 deletions

1
.env.dist Symbolic link
View File

@ -0,0 +1 @@
../.env.dist

1
.htaccess Normal file
View File

@ -0,0 +1 @@
Require all denied

View File

@ -22,8 +22,8 @@ tasks:
default:
- task: services
run: ssh -qtt othostash.com '{{.command}}'
run-root: ssh -qtt othostash.com 'su -l root -c "{{.command}}"'
run: ssh -qtt "$stashbox_domain" '{{.command}}'
run-root: ssh -qtt "$stashbox_domain" 'su -l root -c "{{.command}}"'
exec:
- task: run
@ -82,10 +82,19 @@ tasks:
vars:
remote_path: "{{.ITEM}}"
plan: source .env; terraform init; terraform plan
migrate-state: terraform init -migrate-state
# Terraform
plan:
- task: tf
vars:
CLI_ARGS: plan
apply:
- task: tf
vars:
CLI_ARGS: apply
tf: source .env; terraform init; terraform {{.CLI_ARGS}}
# Utilities
printenv: source .env; printenv
path-update: echo scp "{{.local_path}}" "$stashbox_domain:{{.remote_path}}"
path-backup: scp "$stashbox_domain:{{.remote_path}}" "./.$(basename {{.remote_path}})-$(date +%s)" || echo "No file found."
path-diff:

45
dns.tf
View File

@ -10,71 +10,62 @@ terraform {
provider "namecheap" {}
variable "stash_domain" {
variable "stashbox_domain" {
type = string
default = "web.stash"
}
variable "web_addr" {
variable "stashbox_web_addr" {
type = string
default = "::db"
}
variable "feed_addr" {
variable "stashbox_feed_addr" {
type = string
default = "::feed"
}
variable "app_addr" {
type = string
default = "::beef"
}
variable "ip4_ext" {
variable "stashbox_ip4_ext" {
type = string
default = "0.0.0.0"
}
resource "namecheap_domain_records" "stash" {
domain = var.stash_domain
resource "namecheap_domain_records" "stashbox" {
domain = var.stashbox_domain
record {
hostname = "www"
address = var.web_addr
address = var.stashbox_web_addr
type = "AAAA"
ttl = 1799
}
record {
hostname = "www"
address = var.ip4_ext
address = var.stashbox_ip4_ext
type = "A"
ttl = 1799
}
record {
hostname = "feed"
address = var.feed_addr
address = var.stashbox_feed_addr
type = "AAAA"
ttl = 1799
}
record {
hostname = "feed"
address = var.ip4_ext
type = "A"
}
record {
hostname = "app"
address = var.app_addr
type = "AAAA"
}
record {
hostname = "app"
address = var.ip4_ext
address = var.stashbox_ip4_ext
type = "A"
ttl = 1799
}
record {
hostname = "@"
address = "www.${var.stash_domain}"
address = "www.${var.stashbox_domain}."
type = "CNAME"
ttl = 1799
}
record {
hostname = "plex"
address = "feed.${var.stash_domain}"
address = "feed.${var.stashbox_domain}."
type = "CNAME"
ttl = 1799
}
}