From 270560a4833aa42fc9abf6732e33c107f88fb8ed Mon Sep 17 00:00:00 2001 From: Gleb Koval Date: Mon, 25 Sep 2023 20:52:30 +0100 Subject: [PATCH] cloud vm --- .../0000_proxmox_playbook.yaml | 4 +- infra/cloud/0001_software_playbook.yaml | 53 +++++++++++++++++++ infra/joplin/0001_software_playbook.yaml | 25 --------- inventory/proxmox.yaml | 4 +- 4 files changed, 57 insertions(+), 29 deletions(-) rename infra/{joplin => cloud}/0000_proxmox_playbook.yaml (98%) create mode 100644 infra/cloud/0001_software_playbook.yaml delete mode 100644 infra/joplin/0001_software_playbook.yaml diff --git a/infra/joplin/0000_proxmox_playbook.yaml b/infra/cloud/0000_proxmox_playbook.yaml similarity index 98% rename from infra/joplin/0000_proxmox_playbook.yaml rename to infra/cloud/0000_proxmox_playbook.yaml index 6a0be63..46872e0 100644 --- a/infra/joplin/0000_proxmox_playbook.yaml +++ b/infra/cloud/0000_proxmox_playbook.yaml @@ -1,5 +1,5 @@ -- name: Provision joplin Proxmox VM - hosts: joplin +- name: Provision cloud Proxmox VM + hosts: cloud connection: ansible.builtin.local gather_facts: false vars: diff --git a/infra/cloud/0001_software_playbook.yaml b/infra/cloud/0001_software_playbook.yaml new file mode 100644 index 0000000..1f89839 --- /dev/null +++ b/infra/cloud/0001_software_playbook.yaml @@ -0,0 +1,53 @@ +- name: Setup Software + hosts: joplin + gather_facts: false + tasks: + - name: Wait for connection + ansible.builtin.wait_for_connection: + timeout: 300 + - name: Install system packages + ansible.builtin.apt: + package: qemu-guest-agent + state: latest + become: true + - name: Install docker + block: + - name: Install dependencies + ansible.builtin.apt: + package: + - curl + - python3-apt + - gpg + state: latest + become: true + - name: Add key + ansible.builtin.apt_key: + url: https://download.docker.com/linux/debian/gpg + become: true + - name: Add repo + ansible.builtin.apt_repository: + update_cache: true + repo: deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian bookworm stable + become: true + - name: Install docker + ansible.builtin.apt: + pacakge: + - docker-ce + - docker-ce-cli + - containerd.io + - docker-buildx-plugin + - docker-compose-plugin + state: latest + become: true + - name: Enable docker + ansible.builtin.systemd: + name: docker + state: started + enabled: true + become: true + - name: Enable qemu-guest-agent + ansible.builtin.systemd: + name: qemu-guest-agent + state: started + enabled: true + become: true diff --git a/infra/joplin/0001_software_playbook.yaml b/infra/joplin/0001_software_playbook.yaml deleted file mode 100644 index fa5dd05..0000000 --- a/infra/joplin/0001_software_playbook.yaml +++ /dev/null @@ -1,25 +0,0 @@ -- name: Setup Software - hosts: joplin - gather_facts: false - tasks: - - name: Wait for connection - ansible.builtin.wait_for_connection: - timeout: 300 - - name: Test some stuff - ansible.builtin.shell: | - touch ~/hmm - echo test > ~/test - echo test2 >> ~/test - mkdir ~/dir - touch ~/dir/testing - - name: Install some stuff - ansible.builtin.apt: - update_cache: true - name: qemu-guest-agent - become: true - - name: Enable some stuff - ansible.builtin.systemd: - name: qemu-guest-agent - state: started - enabled: true - become: true diff --git a/inventory/proxmox.yaml b/inventory/proxmox.yaml index f888c38..04520dd 100644 --- a/inventory/proxmox.yaml +++ b/inventory/proxmox.yaml @@ -8,9 +8,9 @@ proxmox: pve2.mgmt.home.local.koval.net: managed: children: - joplin: + cloud: hosts: - joplin2.srv.home.local.koval.net: + cloud.srv.home.local.koval.net: vars: ansible_user: debian ansible_ssh_private_key_file: ~/.ssh/id_rsa