128 lines
2.6 KiB
YAML
128 lines
2.6 KiB
YAML
---
|
|
|
|
- name: Bootstrap
|
|
hosts: our
|
|
gather_facts: false ## required because ansible_host may not have python
|
|
check_mode: false
|
|
become: false
|
|
roles:
|
|
- bootstrap
|
|
|
|
- name: Assert common dependencies
|
|
hosts: our
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: true
|
|
roles:
|
|
- common
|
|
|
|
- name: Assert our dependencies
|
|
hosts: our
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: true
|
|
roles:
|
|
- our
|
|
|
|
|
|
- name: Install Komodo Service
|
|
hosts: our
|
|
vars_files:
|
|
- vars/main.yml
|
|
vars:
|
|
komodo_allowed_ips: "[\"::ffff:{{ lookup('dotenv', 'KOMODO_ALLOWED_IPS', file='../.env.production') }}\"]"
|
|
|
|
roles:
|
|
- role: bpbradley.komodo
|
|
komodo_action: "install"
|
|
komodo_version: "latest"
|
|
komodo_passkeys: "{{ lookup('dotenv', 'KOMODO_PASSKEYS', file='../.env.production') }}"
|
|
komodo_core_url: "{{ lookup('dotenv', 'KOMODO_CORE_URL', file='../.env.production') }}"
|
|
komodo_core_api_key: "{{ lookup('dotenv', 'KOMODO_CORE_API_KEY', file='../.env.production') }}"
|
|
komodo_core_api_secret: "{{ lookup('dotenv', 'KOMODO_CORE_API_SECRET', file='../.env.production') }}"
|
|
enable_server_management: true
|
|
tasks:
|
|
- name: debug
|
|
ansible.builtin.debug:
|
|
msg:
|
|
komodo_allowed_ips: "{{ komodo_allowed_ips }}"
|
|
- name: Allow port 8120 TCP from Komodo core
|
|
community.general.ufw:
|
|
rule: allow
|
|
port: "8120"
|
|
proto: tcp
|
|
from_ip: "{{ lookup('dotenv', 'KOMODO_ALLOWED_IPS', file='../.env.production') }}"
|
|
|
|
- name: Configure database
|
|
hosts: database
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: false
|
|
roles:
|
|
- database
|
|
tags:
|
|
- database
|
|
|
|
- name: Configure Our Server
|
|
hosts: our-server
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: false
|
|
tags:
|
|
- our-server
|
|
roles:
|
|
- geerlingguy.nodejs
|
|
- our-server
|
|
|
|
- name: Configure Our Worker
|
|
hosts: our-worker
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: false
|
|
tags:
|
|
- our-worker
|
|
roles:
|
|
- geerlingguy.nodejs
|
|
- our-worker
|
|
|
|
- name: Configure load balancer
|
|
hosts: load_balancer
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: false
|
|
roles:
|
|
- load_balancer
|
|
vars_files:
|
|
- vars/main.yml
|
|
tags:
|
|
- lb
|
|
|
|
|
|
|
|
- name: Set up IPFS
|
|
hosts: ipfs
|
|
gather_facts: true
|
|
roles:
|
|
- ipfs
|
|
tags:
|
|
- capture
|
|
- ipfs
|
|
|
|
- name: Install Capture instance
|
|
hosts: capture
|
|
gather_facts: true
|
|
check_mode: false
|
|
become: false
|
|
roles:
|
|
- capture
|
|
tags:
|
|
- capture
|
|
|
|
# - name: Configure tracker
|
|
# hosts: tracker
|
|
# gather_facts: true
|
|
# check_mode: false
|
|
# become: false
|
|
# roles:
|
|
# - tracker
|