40 lines
1.5 KiB
YAML
40 lines
1.5 KiB
YAML
- name: Start Archer A9 Router Rebooter
|
|
hosts: Rivendell
|
|
tasks:
|
|
- name: Read homelab config
|
|
ansible.builtin.slurp:
|
|
src: '{{ansible_user_dir}}/.homelab.json'
|
|
register: homelab_config_file
|
|
- name: Set homelab_config variable
|
|
ansible.builtin.set_fact:
|
|
homelab_config: '{{homelab_config_file.content|b64decode|from_json}}'
|
|
|
|
- name: Get Archer A9 Router Rebooter config
|
|
community.postgresql.postgresql_query:
|
|
login_host: '{{homelab_config.database.host}}'
|
|
login_user: '{{homelab_config.database.user}}'
|
|
login_password: '{{homelab_config.database.password}}'
|
|
db: '{{homelab_config.database.name}}'
|
|
query: 'SELECT config FROM service WHERE name = %s;'
|
|
positional_args:
|
|
- archer_a9_router_rebooter
|
|
register: archer_a9_router_rebooter_config_query
|
|
- name: Set archer_a9_router_rebooter_config variable
|
|
ansible.builtin.set_fact:
|
|
archer_a9_router_rebooter_config: '{{archer_a9_router_rebooter_config_query.query_result[0].config}}'
|
|
|
|
- name: Start Archer A9 Router Rebooter Docker container
|
|
community.docker.docker_container:
|
|
name: archer-a9-router-rebooter
|
|
image: archer-a9-router-rebooter:latest
|
|
restart_policy: unless-stopped
|
|
env:
|
|
ROUTER_IP: 192.168.0.1
|
|
ROUTER_PASSWORD: '{{archer_a9_router_rebooter_config.router.password}}'
|
|
volumes:
|
|
- archer-a9-router-rebooter-logs:/logs
|
|
- /etc/localtime:/etc/localtime:ro
|
|
network_mode: host
|
|
keep_volumes: false
|
|
state: started
|