Files
gitlab-mirror/roles/miniforge/tasks/manifests.yml
2026-05-19 16:59:13 +04:00

25 lines
1.0 KiB
YAML

---
- name: "Manifests | get contents of the manifest file"
register: miniforge_manifest_content
ansible.builtin.slurp:
src: "{{ miniforge_homedir }}/{{ file }}"
# 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
- name: "Manifests | extract environment name from manifest file"
ansible.builtin.set_fact:
miniforge_env_name: '{{ (miniforge_manifest_content.content | b64decode | from_yaml).name }}'
- name: "Manifests | display the extracted environment name"
ansible.builtin.debug:
msg: "{{ miniforge_env_name }}"
- name: "Manifests | create environment: {{ miniforge_env_name }}"
become: true
become_user: "{{ user.name }}"
ansible.builtin.shell:
cmd: "{{ miniforge_homedir }}/miniforge3/bin/mamba env create -f {{ miniforge_homedir }}/{{ file }}"
executable: /bin/bash
# ensures that the task runs only when the environment doesn't exist
creates: "{{ miniforge_homedir }}/miniforge3/envs/{{ miniforge_env_name }}"