40 lines
1.1 KiB
YAML
40 lines
1.1 KiB
YAML
---
|
|
# Provisioning of a graviton server using aws spot instance
|
|
- name: provisions a graviton server as aws spot instance
|
|
hosts: localhost
|
|
connection: local
|
|
vars:
|
|
ansible_python_interpreter: /usr/bin/python3
|
|
vars_prompt:
|
|
- name: ssh_pub_key_file
|
|
prompt: Location of your public ssh key
|
|
default: "~/.ssh/keys/Amazon_RSA.pub"
|
|
private: no
|
|
- name: aws_region
|
|
prompt: AWS Region to use for instance
|
|
default: "us-east-1"
|
|
private: no
|
|
- name: aws_ami
|
|
prompt: Disk image to use for instance (default is debian buster arm64)
|
|
default: "ami-08b2293fdd2deba2a"
|
|
private: no
|
|
- name: aws_type
|
|
prompt: Instance type to request
|
|
default: "t4g.nano"
|
|
private: no
|
|
- name: dns_name
|
|
prompt: Which hostname shall be registered for the host (Empty = no dns, Zone needs to be route53 managed)?
|
|
default: ""
|
|
private: no
|
|
vars:
|
|
- dns_zone_name: "{{ dns_name | regex_replace('^[\\w-]+\\.', '') }}"
|
|
roles:
|
|
- aws_graviton_nano_spot
|
|
|
|
- name: include playbook for pihole
|
|
import_playbook: pihole.yml
|
|
|
|
- name: Include playbook to install wireguard
|
|
import_playbook: wireguard.yml
|
|
|