Merge pull request 'teste diferent proxmox cloud-init' (#60) from fenix-admin into main

Reviewed-on: fenix-gitea-admin/iac-teste#60
This commit is contained in:
2025-08-20 22:37:56 +00:00

View File

@ -6,21 +6,44 @@ provider "proxmox" {
username = "terraform" username = "terraform"
} }
} }
resource "proxmox_virtual_environment_download_file" "fedora_cloud_image" {
content_type = "iso"
datastore_id = "local"
node_name = "fedora"
url = "https://dl.fedoraproject.org/pub/fedora/linux/releases/41/Cloud/x86_64/images/Fedora-Cloud-Base-Generic-41-1.4-x86_64.qcow2"
file_name = "Fedora-Cloud-Base-41.qcow2.img"
}
resource "null_resource" "download_image" { resource "proxmox_virtual_environment_file" "fedora_user_data" {
provisioner "local-exec" { content_type = "snippets"
command = <<EOT datastore_id = "local-snippets" # outro storage configurado com Snippets
mkdir -p ./images node_name = "pve"
if [ ! -f ${var.local_image_path} ]; then
echo "Downloading image from ${var.image_source_url}..." source_raw {
curl -L -o ${var.local_image_path} ${var.image_source_url} data = <<-EOF
else #cloud-config
echo "Image already exists: ${var.local_image_path}" hostname: fedora-template
fi users:
EOT - name: meuuser
ssh_pwauth: true
sudo: ALL=(ALL) NOPASSWD:ALL
chpasswd:
list: |
root:SenhaRoot123
meuuser:SenhaUser123
expire: False
package_update: true
packages:
- qemu-guest-agent
runcmd:
- systemctl enable qemu-guest-agent
- systemctl start qemu-guest-agent
EOF
file_name = "fedora-cloud-init.yaml"
} }
} }
resource "proxmox_virtual_environment_vm" "proxmox-kubernetes-VM-template" { resource "proxmox_virtual_environment_vm" "proxmox-kubernetes-VM-template" {
depends_on = [null_resource.download_image] depends_on = [null_resource.download_image]
name = "proxmox-kubernetes-VM-template" name = "proxmox-kubernetes-VM-template"
@ -53,12 +76,13 @@ resource "proxmox_virtual_environment_vm" "proxmox-kubernetes-VM-template" {
} }
disk { disk {
datastore_id = "local-lvm" datastore_id = "local-lvm" # armazenamento para disco da VM
interface = "scsii" file_id = proxmox_virtual_environment_download_file.fedora_cloud_image.id
file = "./images/ubuntu-bionic.img" interface = "scsi1"
size = 20 size = 10
iothread = true
discard = "on"
} }
# Configuração da interface de rede # Configuração da interface de rede
network_device { network_device {
bridge = "vmbr0" bridge = "vmbr0"
@ -72,10 +96,7 @@ initialization {
gateway = "192.168.1.1" # Gateway da rede gateway = "192.168.1.1" # Gateway da rede
} }
} }
user_account { user_data_file_id = proxmox_virtual_environment_file.fedora_user_data.id
password = "passexemplo"
username = "userexemplo"
}
} }
} }