--- - name: Build python virtual environment import_tasks: venv.yml - name: Include prompts import_tasks: prompts.yml - name: Create an instance lightsail: aws_access_key: "{{ access_key }}" aws_secret_key: "{{ secret_key }}" name: "{{ algo_server_name }}" state: present region: "{{ algo_region }}" zone: "{{ algo_region }}a" blueprint_id: "{{ cloud_providers.lightsail.image }}" bundle_id: "{{ cloud_providers.lightsail.size }}" wait_timeout: "300" open_ports: - from_port: 4500 to_port: 4500 protocol: udp - from_port: 500 to_port: 500 protocol: udp - from_port: "{{ wireguard_port }}" to_port: "{{ wireguard_port }}" protocol: udp user_data: | #!/bin/bash mkdir -p /home/ubuntu/.ssh/ echo "{{ lookup('file', '{{ SSH_keys.public }}') }}" >> /home/ubuntu/.ssh/authorized_keys chown -R ubuntu: /home/ubuntu/.ssh/ chmod 0700 /home/ubuntu/.ssh/ chmod 0600 /home/ubuntu/.ssh/* test register: algo_instance - set_fact: cloud_instance_ip: "{{ algo_instance['instance']['public_ip_address'] }}" ansible_ssh_user: ubuntu