You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

101 lines
3.3 KiB
YAML

2 years ago
- name: Deployment - Archive datascience for pipeline run on the server
become: false
ansible.builtin.shell: "git archive --format=tgz --prefix='datascience/' -o ../deployment/roles/datascience/files/{{datascience_repo_name}}.tgz {{ release_tag }}"
args:
chdir: ../{{datascience_repo_name}}/
delegate_to: 127.0.0.1
- name: Deployment - removes old datascience directory
shell: rm -rf /home/{{ user }}/datascience
- name: Deployment - Creates datascience directory
become: false
file:
path: /home/{{ user }}/datascience
state: directory
- name: Deployment - extract datascience archive
become: false
ansible.builtin.unarchive:
src: "{{datascience_repo_name}}.tgz"
dest: /home/{{ user }}/
- name: Deployment - copies the credentials file from the local datascience working copy repository
become: false
ansible.builtin.copy:
src: "../{{datascience_repo_name}}/actes-princiers/conf/local/parameters.yml"
dest: "/home/{{ user }}/datascience/actes-princiers/conf/local/"
mode: '0644'
#- name: Drop all collections in the mongo database
# become: false
# ansible.builtin.script:
# executable: python3
# cmd: "drop_database.py {{ mongodb_ip }} {{ mongodb_admin }} {{mongodb_password}}"
# delegate_to: 127.0.0.1
# ignore_errors: true
- name: Create working directory for mongo admin scripts
become: false
#become_user: "{{ user }}"
ansible.builtin.file:
path: /home/{{ user }}/tmp/
state: directory
mode: '0755'
- name: Installing workplace script librairies
become: false
ansible.builtin.pip:
name: pymongo
virtualenv: /home/{{ user }}/tmp/.venv
- name: Upload drop_database python script
become: false
ansible.builtin.copy:
src: files/drop_database.py
dest: "/home/{{ user }}/tmp/"
mode: '0755'
- name: Run drop_database script
become: false
ansible.builtin.shell: "cd /home/{{ user }}/tmp && . .venv/bin/activate && ./drop_database.py {{ mongodb_ip }} {{ mongodb_admin }} {{mongodb_password}}"
args:
executable: /bin/bash
ignore_errors: true
- name: Install python librairies into the specified virtual environment
become: false
ansible.builtin.pip:
requirements: /home/{{ user }}/datascience/actes-princiers/src/requirements.txt
virtualenv: /home/{{ user }}/datascience/.venv
#- name: Uninstall kedro-telemetry
# become: false
# ansible.builtin.pip:
# name: kedro-telemetry
# virtualenv: /home/{{ user }}/datascience/.venv
# state: absent
- name: Kedro - copy telemetry file
become: false
ansible.builtin.copy:
src: files/telemetry
dest: "/home/{{ user }}/datascience/actes-princiers/.telemetry"
mode: '0644'
- name: Install python librairies into the specified virtual environment
become: false
ansible.builtin.pip:
requirements: /home/{{ user }}/datascience/actes-princiers/src/requirements.txt
virtualenv: /home/{{ user }}/datascience/.venv
- name: Launches the kedro JSON creation pipeline and populates the database
become: false
ansible.builtin.shell: |
cd /home/{{ user }}/datascience/ && . .venv/bin/activate && cd actes-princiers && kedro run --tags="etl_transform" && kedro run --tags="populate_database"
args:
executable: /bin/bash
# chdir: /home/{{ user }}/datascience/actes-princiers/
# executable: /home/{{ user }}/datascience/.venv/bin/kedro