Reorganize structure of Terraform manifests
This commit is contained in:
parent
01d568baf1
commit
453bdb0be5
16
locals.tf
Normal file
16
locals.tf
Normal file
@ -0,0 +1,16 @@
|
||||
locals {
|
||||
first_control_plane_network_ip = cidrhost(hcloud_network.k3s.ip_range, 2)
|
||||
ssh_public_key = trimspace(file(var.public_key))
|
||||
hcloud_image_name = "ubuntu-20.04"
|
||||
|
||||
k3os_install_commands = [
|
||||
"apt install -y grub-efi grub-pc-bin mtools xorriso",
|
||||
"latest=$(curl -s https://api.github.com/repos/rancher/k3os/releases | jq '.[0].tag_name')",
|
||||
"curl -Lo ./install.sh https://raw.githubusercontent.com/rancher/k3os/$(echo $latest | xargs)/install.sh",
|
||||
"chmod +x ./install.sh",
|
||||
"./install.sh --config /tmp/config.yaml /dev/sda https://github.com/rancher/k3os/releases/download/$(echo $latest | xargs)/k3os-amd64.iso",
|
||||
"shutdown -r +1",
|
||||
"sleep 3",
|
||||
"exit 0"
|
||||
]
|
||||
}
|
67
main.tf
67
main.tf
@ -1,52 +1,3 @@
|
||||
variable "hcloud_token" {
|
||||
description = "Hetzner API tokey"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "public_key" {
|
||||
description = "SSH public Key."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "private_key" {
|
||||
description = "SSH private Key."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "location" {
|
||||
description = "Default server location"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "control_plane_server_type" {
|
||||
description = "Default control plane server type"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "agent_server_type" {
|
||||
description = "Default agent server type"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "lb_server_type" {
|
||||
description = "Default load balancer server type"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "servers_num" {
|
||||
description = "Number of control plane nodes."
|
||||
type = number
|
||||
}
|
||||
|
||||
variable "agents_num" {
|
||||
description = "Number of agent nodes."
|
||||
type = number
|
||||
}
|
||||
|
||||
provider "hcloud" {
|
||||
token = var.hcloud_token
|
||||
}
|
||||
|
||||
resource "random_password" "k3s_token" {
|
||||
length = 48
|
||||
special = false
|
||||
@ -193,24 +144,6 @@ resource "hcloud_firewall" "k3s" {
|
||||
|
||||
}
|
||||
|
||||
|
||||
locals {
|
||||
first_control_plane_network_ip = cidrhost(hcloud_network.k3s.ip_range, 2)
|
||||
ssh_public_key = trimspace(file(var.public_key))
|
||||
hcloud_image_name = "ubuntu-20.04"
|
||||
|
||||
k3os_install_commands = [
|
||||
"apt install -y grub-efi grub-pc-bin mtools xorriso",
|
||||
"latest=$(curl -s https://api.github.com/repos/rancher/k3os/releases | jq '.[0].tag_name')",
|
||||
"curl -Lo ./install.sh https://raw.githubusercontent.com/rancher/k3os/$(echo $latest | xargs)/install.sh",
|
||||
"chmod +x ./install.sh",
|
||||
"./install.sh --config /tmp/config.yaml /dev/sda https://github.com/rancher/k3os/releases/download/$(echo $latest | xargs)/k3os-amd64.iso",
|
||||
"shutdown -r +1",
|
||||
"sleep 3",
|
||||
"exit 0"
|
||||
]
|
||||
}
|
||||
|
||||
data "hcloud_image" "linux" {
|
||||
name = local.hcloud_image_name
|
||||
}
|
||||
|
3
providers.tf
Normal file
3
providers.tf
Normal file
@ -0,0 +1,3 @@
|
||||
provider "hcloud" {
|
||||
token = var.hcloud_token
|
||||
}
|
44
variables.tf
Normal file
44
variables.tf
Normal file
@ -0,0 +1,44 @@
|
||||
variable "hcloud_token" {
|
||||
description = "Hetzner API tokey"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "public_key" {
|
||||
description = "SSH public Key."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "private_key" {
|
||||
description = "SSH private Key."
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "location" {
|
||||
description = "Default server location"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "control_plane_server_type" {
|
||||
description = "Default control plane server type"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "agent_server_type" {
|
||||
description = "Default agent server type"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "lb_server_type" {
|
||||
description = "Default load balancer server type"
|
||||
type = string
|
||||
}
|
||||
|
||||
variable "servers_num" {
|
||||
description = "Number of control plane nodes."
|
||||
type = number
|
||||
}
|
||||
|
||||
variable "agents_num" {
|
||||
description = "Number of agent nodes."
|
||||
type = number
|
||||
}
|
Loading…
Reference in New Issue
Block a user