diff options
| -rwxr-xr-x | ansible/inventory.ini | 2 | ||||
| -rw-r--r-- | ansible/playbook.yml | 10 | ||||
| -rw-r--r-- | readme.md | 5 | ||||
| -rw-r--r-- | terraform/.terraform.lock.hcl | 44 | ||||
| -rw-r--r-- | terraform/main.tf | 31 | ||||
| -rw-r--r-- | terraform/plan | bin | 4119 -> 5202 bytes |
6 files changed, 91 insertions, 1 deletions
diff --git a/ansible/inventory.ini b/ansible/inventory.ini new file mode 100755 index 0000000..bc64677 --- /dev/null +++ b/ansible/inventory.ini @@ -0,0 +1,2 @@ +[lxc] +192.168.0.150 ansible_user=root ansible_password='haslo123' ansible_ssh_common_args='-o StrictHostKeyChecking=no' diff --git a/ansible/playbook.yml b/ansible/playbook.yml new file mode 100644 index 0000000..8de2f15 --- /dev/null +++ b/ansible/playbook.yml @@ -0,0 +1,10 @@ +- name: LXC conf + hosts: lxc + gather_facts: yes + become: yes + + tasks: + - name: Instalacja vima + ansible.builtin.apt: + name: vim + state: present diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..50f3609 --- /dev/null +++ b/readme.md @@ -0,0 +1,5 @@ +- Otyły Panie, mam dobrą i złą wiadomość. +- Zacznij od złej. +- Nie działa. +- Hmm, a dobra? +- Zbudowaliśmy go! diff --git a/terraform/.terraform.lock.hcl b/terraform/.terraform.lock.hcl new file mode 100644 index 0000000..a878216 --- /dev/null +++ b/terraform/.terraform.lock.hcl @@ -0,0 +1,44 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/bpg/proxmox" { + version = "0.107.0" + constraints = "~> 0.83" + hashes = [ + "h1:W/DuNEQCgP510F1LfeRCvJa4vXGNT2byH7DzbknpEO4=", + "zh:3c1e298f4f0d954e83d11aaf2400ec242b835ca294f8a94d67bb5ce0b30da0e9", + "zh:4776f7f262728f8e2252360f7d1a4adc853d87d86a7515f4780375c2932ef763", + "zh:53633a48f7fad5561a30b349e7b46c6a7a10a54c99225a4d30a7a24086921098", + "zh:62686df322f773b40c1881eb7932058cbf68101bfa5cd66bc08c9bcb6ad0bdfd", + "zh:62afd9992f9089311a876c7e79d35a8b7935c0c553f6de8fb6ac2b76f5c4a3ce", + "zh:6b379f3858ba8bd548b7d50c07f7fb7eb339d2020c07c2b69aaba1f2247aedae", + "zh:8a520d7df039cb060182683d823d1705423cd9e97936b8e65a27dbf54ea9643a", + "zh:b489993495332d3d4aedfd53a7ff80ce880a58ec575bf3340646791c1803862c", + "zh:db164bc934aaeb56ae1b368208c7cd33f5af5ac84dc98fa7da736a62a5ede143", + "zh:eeb9611c160baf65e6acede202b9d923d185395af2725425c2f8226403675155", + "zh:f24b8014a513483cef883caf58884a380fb51567e50ea5425a3d5ec6629f4a9b", + "zh:f26e0763dbe6a6b2195c94b44696f2110f7f55433dc142839be16b9697fa5597", + "zh:f329a8f344ec11c64686a0b29cd706f5dfedb19925a58aa61fb39f0d0a854619", + "zh:ff0a8a1ac74eaef2826054982d82cb42f1376dac98f3d30f995d60f4964ee7b1", + ] +} + +provider "registry.terraform.io/hashicorp/local" { + version = "2.9.0" + hashes = [ + "h1:9rBZCMNpxKwMlRbWH2QpwD3kqUCAejdOZQ/aiiDObXQ=", + "zh:0baa4566cf77f1ff52f4293d1c8536202dd23edc197c3196413a28343c3ac3a0", + "zh:16b5559c3c07088ddad11a9bb9e9c0799999363c2958e9a5be2bcbbf2cd9ca64", + "zh:197c79015a10d1cce904a8ea722cbc750c42aeae2da53f44a6a0751d9fd1aa90", + "zh:29d0b03e5343a80677ebfeb2e2c31cbe4b1f65e736e53417454a4277fec2544c", + "zh:4896bfa6cf1d2fd562b47ef2e87f47862ae92a04f8ad5d764380f0c6653473b8", + "zh:531f8529cbca49f681883e57761a05a8398afaef6d1ab0d205d26bf12f4428e8", + "zh:6aaf5011d83161c86d2bfb80c0923ec934e578288758da2f37acb7aec129004b", + "zh:7430275253d3d3c40aa6179e0ec0d63212874dbbc06c5a51b9d07ec590f9756c", + "zh:78d5eefdd9e494defcb3c68d282b8f96630502cac21d1ea161f53cfe9bb483b3", + "zh:be17dc611e95e26cdf6cad79dfccf1064f0e32032a2efeb939a9bbe7fb1cbfe9", + "zh:f0e3b0aa644202e1d79d2000dca91f6019425da71e9800fa23f27e51c034f195", + "zh:f62bae4519e4ead49182ddc8afe8cf61e2a4c3ba3973b0fbba967736a2696aa3", + "zh:fcafa360a5b0b96244f26f4e3a6d642b716a376557142c2442ff2fb12d11da18", + ] +} diff --git a/terraform/main.tf b/terraform/main.tf index fc36c8b..9977fb4 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -27,10 +27,15 @@ resource "proxmox_virtual_environment_container" "lxc01" { started = true + wait_for_ip { + ipv4 = true + } + operating_system { template_file_id = "local:vztmpl/debian-12-standard_12.12-1_amd64.tar.zst" } + cpu { cores = var.lxc_cores } @@ -48,13 +53,37 @@ resource "proxmox_virtual_environment_container" "lxc01" { network_interface { name = "eth0" bridge = "vmbr0" + } initialization { hostname = var.lxc_name + ip_config { + ipv4 { + address = "dhcp" + } + } + user_account { - password = "Password123!" + keys = [ + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHB4jD3PVsg1edlMwBW6Hb/NYLnzEI8dyJQRnQQap45q enrico@cachyos" + ] } } } + + +resource "local_file" "ansible_inventory" { + content = <<-EOT + [lxc] + ${try(proxmox_virtual_environment_container.lxc01.ipv4["eth0"], "Brak_IP")} ansible_user=root ansible_ssh_common_args='-o StrictHostKeyChecking=no' + EOT + + filename = "${path.module}/../ansible/inventory.ini" +} + +output "aktualne_ip_kontenera" { + description = "Adres IP pobrany przez Terraforma" + value = try(proxmox_virtual_environment_container.lxc01.ipv4["eth0"], "Proxmox jeszcze nie zaraportował IP!") +} diff --git a/terraform/plan b/terraform/plan Binary files differindex 65f9b8d..68bceaa 100644 --- a/terraform/plan +++ b/terraform/plan |