From 1e1301edb7ef2855ae53fbb9d744d1f81f3fc18a Mon Sep 17 00:00:00 2001 From: Nikolai Rodionov Date: Mon, 6 May 2024 18:33:05 +0200 Subject: [PATCH] Use variables by hetzner playbook --- playbooks/providers/hetzner/playbook.yml | 28 ++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/playbooks/providers/hetzner/playbook.yml b/playbooks/providers/hetzner/playbook.yml index b0980df..23f0b93 100644 --- a/playbooks/providers/hetzner/playbook.yml +++ b/playbooks/providers/hetzner/playbook.yml @@ -6,6 +6,9 @@ customer: "{{ lookup('ansible.builtin.env', 'SP_CUSTOMER') }}" env: "{{ lookup('ansible.builtin.env', 'SP_ENV') }}" state: "{{ lookup('ansible.builtin.env', 'SP_STATE') }}" + server_type: "{{ lookup('ansible.builtin.env', 'SP_SERVER_TYPE', default='cx21') }}" + server_location: "{{ lookup('ansible.builtin.env', 'SP_SERVER_LOCATION', default='hel1') }}" + disk_size: "{{ lookup('ansible.builtin.env', 'SP_DISK_SIZE', default='40') }}" tags: - cloud tasks: @@ -33,13 +36,30 @@ # -------------------------------------------------------- # -- Prepare subnets # -------------------------------------------------------- + - debug: + msg: "{{ server_location }}" + - name: Set network_zone to eu-central + when: server_location == "fsn1" or server_location == "nbg1" or server_location == "hel1" + set_fact: + network_zone: eu-central + + - name: Set network_zone to us-east + when: server_location == "ash" + set_fact: + network_zone: us-east + + - name: Set network_zone to us-west + when: server_location == "hil" + set_fact: + network_zone: us-west + - name: Prepare subnets when: state == "present" hetzner.hcloud.hcloud_subnetwork: network: "{{ env }}" ip_range: 10.0.0.0/16 state: "{{ state }}" - network_zone: eu-central + network_zone: "{{ network_zone }}" type: cloud api_token: "{{ api_token }}" # -------------------------------------------------------- @@ -48,7 +68,7 @@ - name: Create server hetzner.hcloud.hcloud_server: name: "{{ env }}" - server_type: cx21 + server_type: "{{ server_type }}" image: rocky-9 state: "{{ state }}" api_token: "{{ api_token }}" @@ -56,7 +76,7 @@ - "{{ env }}" private_networks: - "{{ env }}" - location: hel1 + location: "{{ server_location }}" register: server_data # -------------------------------------------------------- # -- Create volumes @@ -65,7 +85,7 @@ hetzner.hcloud.hcloud_volume: api_token: "{{ api_token }}" name: "{{ env }}" - size: 40 + size: "{{ disk_size }}" server: "{{ env }}" state: "{{ state }}" # ----------------------------------------------------