Make the task names consistent with the collection convention
This commit is contained in:
@@ -5,13 +5,13 @@
|
|||||||
any_errors_fatal: true
|
any_errors_fatal: true
|
||||||
|
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
- name: "Include default vars"
|
- name: "Verify | include default vars"
|
||||||
ansible.builtin.include_vars:
|
ansible.builtin.include_vars:
|
||||||
dir: "{{ lookup('env', 'MOLECULE_PROJECT_DIRECTORY') }}/defaults/"
|
dir: "{{ lookup('env', 'MOLECULE_PROJECT_DIRECTORY') }}/defaults/"
|
||||||
extensions: ['yml']
|
extensions: ['yml']
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- name: "Get the version of Miniforge installed"
|
- name: "Verify | get the version of Miniforge installed"
|
||||||
become: true
|
become: true
|
||||||
become_user: alice
|
become_user: alice
|
||||||
changed_when: false
|
changed_when: false
|
||||||
@@ -19,13 +19,13 @@
|
|||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: ~/miniforge3/bin/conda --version
|
cmd: ~/miniforge3/bin/conda --version
|
||||||
|
|
||||||
- name: "Verify the installed version of Miniforge"
|
- name: "Verify | check the installed version of Miniforge"
|
||||||
ansible.builtin.assert:
|
ansible.builtin.assert:
|
||||||
that: "'{{ miniforge_release | split('-') | first }}' in miniforge_installed_version.stdout"
|
that: "'{{ miniforge_release | split('-') | first }}' in miniforge_installed_version.stdout"
|
||||||
success_msg: "OK, expected version installed: '{{ miniforge_installed_version.stdout }}'"
|
success_msg: "OK, expected version installed: '{{ miniforge_installed_version.stdout }}'"
|
||||||
fail_msg: "FAIL: unexpected version installed: '{{ miniforge_installed_version.stdout }}'"
|
fail_msg: "FAIL: unexpected version installed: '{{ miniforge_installed_version.stdout }}'"
|
||||||
|
|
||||||
- name: "Check Mamba installing correct tools from channels"
|
- name: "Verify | check Mamba installing correct tools from channels"
|
||||||
become: true
|
become: true
|
||||||
become_user: alice
|
become_user: alice
|
||||||
changed_when: false
|
changed_when: false
|
||||||
@@ -35,13 +35,13 @@
|
|||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: ~/miniforge3/envs/{{ env }}/bin/stress-ng --version
|
cmd: ~/miniforge3/envs/{{ env }}/bin/stress-ng --version
|
||||||
|
|
||||||
- name: "Verify the version of the installed tool"
|
- name: "Verify | check the version of the installed tool"
|
||||||
ansible.builtin.assert:
|
ansible.builtin.assert:
|
||||||
that: "'stress-ng, version 0.17.03' in miniforge_tool_version.stdout"
|
that: "'stress-ng, version 0.17.03' in miniforge_tool_version.stdout"
|
||||||
success_msg: "OK, expected version installed: '{{ miniforge_tool_version.stdout }}'"
|
success_msg: "OK, expected version installed: '{{ miniforge_tool_version.stdout }}'"
|
||||||
fail_msg: "FAIL: unexpected version installed: '{{ miniforge_tool_version.stdout }}'"
|
fail_msg: "FAIL: unexpected version installed: '{{ miniforge_tool_version.stdout }}'"
|
||||||
|
|
||||||
- name: "Check the deployed environments for Alice (pip)"
|
- name: "Verify | check the deployed environments for Alice (pip)"
|
||||||
become: true
|
become: true
|
||||||
become_user: alice
|
become_user: alice
|
||||||
loop:
|
loop:
|
||||||
@@ -51,7 +51,7 @@
|
|||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: ~/miniforge3/envs/{{ item.env }}/bin/python -c 'import {{ item.module }}'
|
cmd: ~/miniforge3/envs/{{ item.env }}/bin/python -c 'import {{ item.module }}'
|
||||||
|
|
||||||
- name: "Check the deployed environments for Bob"
|
- name: "Verify | check the deployed environments for Bob"
|
||||||
become: true
|
become: true
|
||||||
become_user: bob
|
become_user: bob
|
||||||
loop:
|
loop:
|
||||||
@@ -60,7 +60,7 @@
|
|||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: ~/miniforge3/envs/{{ item.env }}/bin/python -c 'import {{ item.module }}'
|
cmd: ~/miniforge3/envs/{{ item.env }}/bin/python -c 'import {{ item.module }}'
|
||||||
|
|
||||||
- name: "Check that no environments were deployed for Charlie"
|
- name: "Verify | check that no environments were deployed for Charlie"
|
||||||
become: true
|
become: true
|
||||||
become_user: charlie
|
become_user: charlie
|
||||||
register: miniforge_charlie_envs
|
register: miniforge_charlie_envs
|
||||||
|
|||||||
@@ -1,20 +1,20 @@
|
|||||||
---
|
---
|
||||||
- name: "Get contents of the manifest file"
|
- name: "Manifests | get contents of the manifest file"
|
||||||
register: miniforge_manifest_content
|
register: miniforge_manifest_content
|
||||||
ansible.builtin.slurp:
|
ansible.builtin.slurp:
|
||||||
src: "{{ miniforge_homedir }}/{{ file }}"
|
src: "{{ miniforge_homedir }}/{{ file }}"
|
||||||
|
|
||||||
# Since the file can be named whatever, we need to extract the environment name
|
# Since the file can be named whatever, we need to extract the environment name
|
||||||
# as that is what the actual environment folder name will be
|
# as that is what the actual environment folder name will be
|
||||||
- name: "Extract enviroment name from manifest file"
|
- name: "Manifests | extract environment name from manifest file"
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
miniforge_env_name: '{{ (miniforge_manifest_content.content | b64decode | from_yaml).name }}'
|
miniforge_env_name: '{{ (miniforge_manifest_content.content | b64decode | from_yaml).name }}'
|
||||||
|
|
||||||
- name: "Display the extracted environment name"
|
- name: "Manifests | display the extracted environment name"
|
||||||
ansible.builtin.debug:
|
ansible.builtin.debug:
|
||||||
msg: "{{ miniforge_env_name }}"
|
msg: "{{ miniforge_env_name }}"
|
||||||
|
|
||||||
- name: "Create environment: {{ miniforge_env_name }}"
|
- name: "Manifests | create environment: {{ miniforge_env_name }}"
|
||||||
become: true
|
become: true
|
||||||
become_user: "{{ user.name }}"
|
become_user: "{{ user.name }}"
|
||||||
ansible.builtin.shell:
|
ansible.builtin.shell:
|
||||||
|
|||||||
@@ -1,73 +1,73 @@
|
|||||||
---
|
---
|
||||||
# These variables are registered as host vars, for whatever deep reason
|
# These variables are registered as host vars, for whatever deep reason
|
||||||
- name: "Get current user entity info ({{ user.name }})"
|
- name: "Miniforge | get current user entity info ({{ user.name }})"
|
||||||
ansible.builtin.getent:
|
ansible.builtin.getent:
|
||||||
database: passwd
|
database: passwd
|
||||||
key: "{{ user.name }}"
|
key: "{{ user.name }}"
|
||||||
split: ":"
|
split: ":"
|
||||||
|
|
||||||
- name: "Get current user home directory ({{ user.name }})"
|
- name: "Miniforge | get current user home directory ({{ user.name }})"
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
miniforge_homedir: "{{ getent_passwd[user.name][4] }}"
|
miniforge_homedir: "{{ getent_passwd[user.name][4] }}"
|
||||||
|
|
||||||
- name: "Set miniforge dir ({{ user.name }})"
|
- name: "Miniforge | set miniforge dir ({{ user.name }})"
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
miniforge_dir: "{{ miniforge_homedir }}/miniforge3"
|
miniforge_dir: "{{ miniforge_homedir }}/miniforge3"
|
||||||
|
|
||||||
- name: "Build miniforge bin path ({{ user.name }})"
|
- name: "Miniforge | build miniforge bin path ({{ user.name }})"
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
miniforge_mamba_bin_path: "{{ miniforge_dir }}/bin/mamba"
|
miniforge_mamba_bin_path: "{{ miniforge_dir }}/bin/mamba"
|
||||||
|
|
||||||
- name: "Display miniforge script path ({{ user.name }})"
|
- name: "Miniforge | display miniforge script path ({{ user.name }})"
|
||||||
ansible.builtin.debug:
|
ansible.builtin.debug:
|
||||||
msg: "{{ miniforge_script_path }}"
|
msg: "{{ miniforge_script_path }}"
|
||||||
|
|
||||||
- name: "Install miniforge ({{ user.name }})"
|
- name: "Miniforge | install miniforge ({{ user.name }})"
|
||||||
become: true
|
become: true
|
||||||
become_user: "{{ user.name }}"
|
become_user: "{{ user.name }}"
|
||||||
vars:
|
vars:
|
||||||
allow_world_readable_tmpfiles: true
|
allow_world_readable_tmpfiles: true
|
||||||
block:
|
block:
|
||||||
- name: "Check Mamba availability ({{ user.name }})"
|
- name: "Miniforge | check Mamba availability ({{ user.name }})"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "{{ miniforge_mamba_bin_path }} info"
|
cmd: "{{ miniforge_mamba_bin_path }} info"
|
||||||
rescue:
|
rescue:
|
||||||
- name: "Install miniforge in a non-interactive mode ({{ user.name }})"
|
- name: "Miniforge | install miniforge in a non-interactive mode ({{ user.name }})"
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "/bin/bash {{ miniforge_script_path }} -b"
|
cmd: "/bin/bash {{ miniforge_script_path }} -b"
|
||||||
creates: "{{ miniforge_homedir }}/miniforge3"
|
creates: "{{ miniforge_homedir }}/miniforge3"
|
||||||
|
|
||||||
- name: "Initialize Mamba/Conda ({{ user.name }})"
|
- name: "Miniforge | initialize Mamba/Conda ({{ user.name }})"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "{{ miniforge_mamba_bin_path }} shell init"
|
cmd: "{{ miniforge_mamba_bin_path }} shell init"
|
||||||
|
|
||||||
- name: "Check if Mamba has become available ({{ user.name }})"
|
- name: "Miniforge | check if Mamba has become available ({{ user.name }})"
|
||||||
changed_when: false
|
changed_when: false
|
||||||
ansible.builtin.command:
|
ansible.builtin.command:
|
||||||
cmd: "{{ miniforge_mamba_bin_path }} info"
|
cmd: "{{ miniforge_mamba_bin_path }} info"
|
||||||
|
|
||||||
|
|
||||||
- name: "Deploy default .condarc if it doesn't exist already ({{ user.name }})"
|
- name: "Miniforge | deploy default .condarc if it doesn't exist already ({{ user.name }})"
|
||||||
become: true
|
become: true
|
||||||
become_user: "{{ user.name }}"
|
become_user: "{{ user.name }}"
|
||||||
block:
|
block:
|
||||||
- name: "Check if .condarc already exists ({{ user.name }})"
|
- name: "Miniforge | check if .condarc already exists ({{ user.name }})"
|
||||||
register: miniforge_condarc_stat
|
register: miniforge_condarc_stat
|
||||||
failed_when: miniforge_condarc_stat.stat.exists is false
|
failed_when: miniforge_condarc_stat.stat.exists is false
|
||||||
ansible.builtin.stat:
|
ansible.builtin.stat:
|
||||||
path: "{{ miniforge_homedir }}/.condarc"
|
path: "{{ miniforge_homedir }}/.condarc"
|
||||||
|
|
||||||
rescue:
|
rescue:
|
||||||
- name: "Set default .condarc from external file if provided ({{ user.name }})"
|
- name: "Miniforge | set default .condarc from external file if provided ({{ user.name }})"
|
||||||
when: condarc_file is defined and condarc_file != ""
|
when: condarc_file is defined and condarc_file != ""
|
||||||
ansible.builtin.copy:
|
ansible.builtin.copy:
|
||||||
src: "{{ condarc_file }}"
|
src: "{{ condarc_file }}"
|
||||||
dest: "{{ miniforge_homedir }}/.condarc"
|
dest: "{{ miniforge_homedir }}/.condarc"
|
||||||
mode: "0600"
|
mode: "0600"
|
||||||
|
|
||||||
- name: "Set default content via .condarc ({{ user.name }})"
|
- name: "Miniforge | set default content via .condarc ({{ user.name }})"
|
||||||
when: condarc_file is not defined or condarc_file == ""
|
when: condarc_file is not defined or condarc_file == ""
|
||||||
ansible.builtin.copy:
|
ansible.builtin.copy:
|
||||||
dest: "{{ miniforge_homedir }}/.condarc"
|
dest: "{{ miniforge_homedir }}/.condarc"
|
||||||
@@ -75,7 +75,7 @@
|
|||||||
mode: "0600"
|
mode: "0600"
|
||||||
|
|
||||||
|
|
||||||
- name: "Deploy manifest files for user: {{ user.name }}"
|
- name: "Miniforge | deploy manifest files for user: {{ user.name }}"
|
||||||
when:
|
when:
|
||||||
- "manifest_dir is defined"
|
- "manifest_dir is defined"
|
||||||
- "user.mamba_files is defined"
|
- "user.mamba_files is defined"
|
||||||
@@ -91,7 +91,7 @@
|
|||||||
|
|
||||||
|
|
||||||
# Variables from the outer scope (like 'user') will get passed down to the included tasks
|
# Variables from the outer scope (like 'user') will get passed down to the included tasks
|
||||||
- name: "Create environments from deployed manifests for user: {{ user.name }}"
|
- name: "Miniforge | create environments from deployed manifests for user: {{ user.name }}"
|
||||||
when:
|
when:
|
||||||
- "miniforge_create_envs is true"
|
- "miniforge_create_envs is true"
|
||||||
- "user.mamba_files is defined"
|
- "user.mamba_files is defined"
|
||||||
|
|||||||
Reference in New Issue
Block a user