You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
require "yaml"
|
|
|
|
|
|
|
|
DOMAIN = ENV.fetch("LOTUS_LAND_STORY_DOMAIN")
|
|
|
|
|
|
|
|
task terraform: "terraform.tfvars" do
|
|
|
|
sh "terraform apply"
|
|
|
|
end
|
|
|
|
|
|
|
|
task ansible: "vars.yml" do
|
|
|
|
sh "ansible-playbook main.yml"
|
|
|
|
end
|
|
|
|
|
|
|
|
task "terraform.tfvars" do |t|
|
|
|
|
File.write(t.name, "domain = \"#{DOMAIN}\"")
|
|
|
|
end
|
|
|
|
|
|
|
|
task "vars.yml" do |t|
|
|
|
|
linode_volume = `terraform output -raw lotus_land_story_volume`
|
|
|
|
miniflux_password = `op read op://Private/Miniflux/password`.strip
|
|
|
|
File.write(t.name, YAML.dump({
|
|
|
|
domain: DOMAIN, linode_volume:, miniflux_password:,
|
|
|
|
}.transform_keys(&:to_s)))
|
|
|
|
end
|
|
|
|
|
|
|
|
task default: %i[ terraform ansible ]
|