forc_ad_automated/roles/forcad/tasks/main.yml

57 lines
1.5 KiB
YAML

---
- name: Create forcAD directory
ansible.builtin.file:
path: "{{ forc_ad_directory }}"
state: directory
mode: '0755'
- name: Download forcAD files
ansible.builtin.get_url:
url: "{{ forc_ad_link }}"
dest: "{{ forc_ad_directory }}"
- name: Unzip forcAD files
ansible.builtin.unarchive:
src: "{{ forc_ad_directory}}/{{ forc_ad_zipfile }}"
dest: "{{ forc_ad_directory }}"
remote_src: true
- name: Set unzipped directory
ansible.builtin.set_fact:
forc_ad_directory: "{{ forc_ad_directory }}/{{ forc_ad_zipfile.split('.z')[0] }}"
- name: Make sure python and python-venv are installed
ansible.builtin.apt:
pkg:
- python3
- python3-venv
- name: Create venv
ansible.builtin.pip:
requirements: "{{ item }}"
virtualenv: "{{ forc_ad_directory }}//.venv"
virtualenv_python: python3
with_items:
- "{{ forc_ad_directory }}/cli/requirements.txt"
- "{{ forc_ad_directory }}/checkers/requirements.txt"
- name: Copy checkers
ansible.builtin.copy:
src: "checkers/"
dest: "{{ forc_ad_directory }}/checkers"
mode: '0755'
- name: Copy forcAD config
ansible.builtin.copy:
src: "config.yml"
dest: "{{ forc_ad_directory }}"
- name: Setup forcAD
ansible.builtin.command:
cmd: "{{ forc_ad_directory }}/.venv/bin/python3 {{ forc_ad_directory }}/control.py setup"
- name: Start forcAD
ansible.builtin.command:
cmd: "{{ forc_ad_directory }}/.venv/bin/python3 {{ forc_ad_directory }}/control.py start --fast"