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" {
|
resource "random_password" "k3s_token" {
|
||||||
length = 48
|
length = 48
|
||||||
special = false
|
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" {
|
data "hcloud_image" "linux" {
|
||||||
name = local.hcloud_image_name
|
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