20 Commits

Author SHA1 Message Date
22707124b4 chore(release): v0.5.2 (#11)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.5.2

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/11
2025-01-11 22:06:28 +01:00
1f65d3c75e feat: add ability to set disk size
All checks were successful
continuous-integration/drone/push Build is passing
2025-01-11 22:05:44 +01:00
caa489fbf9 chore(release): v0.5.1 (#10)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.5.1

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/10
2025-01-11 22:02:26 +01:00
94b701b133 feat: add on boot true for all nodes
All checks were successful
continuous-integration/drone/push Build is passing
2025-01-11 22:00:42 +01:00
90ecf5b603 chore(release): v0.5.0 (#9)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.5.0

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/9
2024-12-01 22:43:19 +01:00
f9a664763f feat: remove private variables
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-12-01 22:42:48 +01:00
789b2ab2a2 feat: remove provider
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-12-01 22:39:45 +01:00
bdb1847982 chore(release): v0.4.0 (#8)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.4.0

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/8
2024-11-30 11:55:11 +01:00
055fdb2282 feat: install churn
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 11:54:38 +01:00
a5b431325c chore(release): v0.3.0 (#7)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.3.0

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/7
2024-11-30 10:45:01 +01:00
7b728727ff feat: allow password to be null
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 10:43:24 +01:00
ffa5725a25 fix: revert changes to ip
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 10:41:20 +01:00
3ab2e3da9b chore(release): v0.2.3 (#5)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.2.3

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/5
2024-11-30 00:57:26 +01:00
a3002d75a8 fix: use source for remote file
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 00:56:54 +01:00
bbff4df38a chore(release): v0.2.2 (#4)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.2.2

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/4
2024-11-30 00:46:14 +01:00
80e06acc47 fix: make sure file names align
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 00:45:34 +01:00
bb71f85fdd chore(release): v0.2.1 (#3)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.2.1

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/3
2024-11-30 00:38:53 +01:00
1f0b85ca04 fix: cores and bootdisk
All checks were successful
continuous-integration/drone/push Build is passing
cpus are deprecated

bootdisk is synced every time

Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 00:38:06 +01:00
fbf00e99e1 chore(release): v0.2.0 (#2)
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
chore(release): 0.2.0

Co-authored-by: cuddle-please <bot@cuddle.sh>
Reviewed-on: https://git.front.kjuulh.io/kjuulh/clank-node/pulls/2
2024-11-30 00:26:27 +01:00
7708a0cdf3 feat: include template
All checks were successful
continuous-integration/drone/push Build is passing
Signed-off-by: kjuulh <contact@kjuulh.io>
2024-11-30 00:25:36 +01:00
5 changed files with 72 additions and 20 deletions

View File

@@ -6,6 +6,55 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]
## [0.5.2] - 2025-01-11
### Added
- add ability to set disk size
## [0.5.1] - 2025-01-11
### Added
- add on boot true for all nodes
## [0.5.0] - 2024-12-01
### Added
- remove private variables
- remove provider
## [0.4.0] - 2024-11-30
### Added
- install churn
## [0.3.0] - 2024-11-30
### Added
- allow password to be null
### Fixed
- revert changes to ip
## [0.2.3] - 2024-11-29
### Fixed
- use source for remote file
## [0.2.2] - 2024-11-29
### Fixed
- make sure file names align
## [0.2.1] - 2024-11-29
### Fixed
- cores and bootdisk
## [0.2.0] - 2024-11-29
### Added
- include template
## [0.1.0] - 2024-11-29
### Added

View File

@@ -0,0 +1,10 @@
#cloud-config
runcmd:
- apt update
- apt install -y qemu-guest-agent neovim ranger
- systemctl start qemu-guest-agent
- systemctl enable --now sshd
- curl https://git.front.kjuulh.io/kjuulh/churn-v2/raw/branch/main/install.sh | bash
fqdn: ${hostname}.${domain}

13
node.tf
View File

@@ -22,7 +22,7 @@ resource "null_resource" "cloud_init_deb12_node" {
provisioner "file" {
source = local_file.cloud_init_deb12_node.filename
destination = "/var/lib/vz/snippets/cloud_init_deb12_node_${var.name}.yml"
destination = "/var/lib/vz/snippets/cloud_init_deb12_${var.name}.yml"
}
depends_on = [
@@ -47,10 +47,10 @@ resource "proxmox_vm_qemu" "node" {
os_type = "cloud-init"
# Cloud init options
cicustom = "vendor=local:snippets/cloud_init_deb12_node.yml"
cicustom = "vendor=local:snippets/cloud_init_deb12_${var.name}.yml"
ipconfig0 = "ip=${var.ip_address},gw=${var.gateway}"
cpu = var.cpu
cores = var.cpu
memory = var.memory
agent = 1
@@ -65,6 +65,8 @@ resource "proxmox_vm_qemu" "node" {
bootdisk = "scsi0"
scsihw = "virtio-scsi-single"
onboot = true
serial {
id = 0
}
@@ -82,7 +84,7 @@ resource "proxmox_vm_qemu" "node" {
disk {
storage = "local"
# The size of the disk should be at least as big as the disk in the template. If it's smaller, the disk will be recreated
size = "10G"
size = var.disk_size
}
}
}
@@ -101,7 +103,8 @@ resource "proxmox_vm_qemu" "node" {
## TF to think this needs to be rebuilt on every apply
lifecycle {
ignore_changes = [
network
network,
bootdisk
]
}
}

View File

@@ -8,10 +8,3 @@ terraform {
required_version = ">= 0.13"
}
provider "proxmox" {
pm_api_url = var.proxmox_url
pm_user = var.proxmox_user
pm_password = var.proxmox_password
pm_tls_insecure = true
}

View File

@@ -3,14 +3,6 @@ variable "proxmox_url" {
default = "https://proxmox.i.kjuulh.io/api2/json"
}
variable "proxmox_user" {
description = "proxmox username (eg. <name>@pve)"
}
variable "proxmox_password" {
description = "proxmox password"
}
variable "proxmox_ip" {
description = "the ip address of the proxmox instance"
default = "10.0.11.0"
@@ -55,6 +47,7 @@ variable "ssh_private" {
variable "user_password" {
sensitive = true
default = null
}
variable "cpu" {
@@ -64,3 +57,7 @@ variable "cpu" {
variable "memory" {
default = 512
}
variable "disk_size" {
default = "10G"
}