- 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