feat: Reorganizes some of the roles and renames some variables

This commit is contained in:
2024-11-27 16:59:22 -05:00
parent ee91b060eb
commit 2692509fbe
9 changed files with 159 additions and 94 deletions

View File

@@ -10,27 +10,20 @@
- debug
- never
- name: Parse template path.
ansible.builtin.set_fact:
template:
path: "{{ project_dir }}/{{ build_dir | default('.build') }}/template"
when: not template.path is defined
- name: Parse template vars.
ansible.builtin.set_fact:
template:
vars: "repo_vars"
when: not template.vars is defined
# - name: Prepare variables.
# ansible.builtin.include_tasks:
# file: "prepare_vars.yml"
# vars:
# template: "{{ template }}"
- name: Debug template vars post parse.
- name: Debug build dir.
ansible.builtin.debug:
var: template
var: build_dir
tags:
- debug
- never
- name: Parse template facts.
ansible.builtin.include_role:
name: "prepare-template-facts"
- name: Debug template path post parse.
ansible.builtin.debug:
var: template_dir
tags:
- debug
- never
@@ -40,22 +33,9 @@
path: "{{ project_dir }}"
state: directory
- name: Ensure repo.
ansible.builtin.git:
repo: "{{ template.repo.url }}"
dest: "{{ template.path }}"
version: "{{ template.repo.version | default('main') }}"
when: template.repo.url is defined
- name: Check for repo vars directory.
ansible.builtin.stat:
path: "{{ template.path }}/{{ template.vars }}"
register: repo_vars
- name: Load repo vars if available.
ansible.builtin.include_vars:
dir: "{{ template.path }}/{{ template.vars }}"
when: repo_vars.stat.isdir is defined
- name: Load template vars.
ansible.builtin.include_role:
name: "load-template-vars"
- name: Debug on_setup.
ansible.builtin.debug:
@@ -64,11 +44,52 @@
- debug
- never
- name: Debug copy directory contents.
ansible.builtin.debug:
var: unsafe_copy_directory_on_setup
tags:
- debug
- never
- name: Check if project has been previously setup.
ansible.builtin.stat:
path: "{{ project_dir }}/.setup"
register: setup_file
- name: Debug setup file stat.
ansible.builtin.debug:
var: setup_file.exists
tags:
- debug
- never
- name: Copy directory contents to project directory.
ansible.builtin.command: |
cp -r "{{ template_dir }}/{{ item.src | default(item) }}/." \
"{{ item.dest | default(project_dir) }}"
with_items: "{{ copy_directory_on_setup }}"
when: setup_file.stat.exists is false
register: copy_directory_stat
- name: Debug copy directory stat.
ansible.builtin.debug:
var: copy_directory_stat
tags:
- debug
- never
- name: Copy project files.
ansible.builtin.include_tasks:
file: "copy_if_not_exists.yml"
vars:
source: "{{ template.path }}/{{ item.src | default(item) }}"
source: "{{ template_dir }}/{{ item.src | default(item) }}"
destination: "{{ project_dir }}/{{ item.dest | default(item) }}"
mode: "{{ item.mode | default('0600') }}"
loop: "{{ copy_on_setup }}"
- name: Create setup file.
ansible.builtin.template:
src: "templates/setup.txt"
dest: "{{ project_dir }}/.setup"
mode: '0600'
when: not setup_file.stat.exists