Set pypi_twine_executable for upload-pypi role
Use the full path for twine to avoid pathing issues.
Depends-On:
- hosts: localhost
-
roles:
- role: upload-pypi
pypi_path: "{{ zuul.executor.work_root }}/artifacts"
+
+ pre_tasks:
+ - name: Check for twine install
+ command: which twine
+ ignore_errors: yes
+ register: register_twine
+
+ - name: Set pypi_twine_executable
+ set_fact:
+ pypi_twine_executable: "{{ register_twine.stdout }}"
+ when: register_twine|succeeded
+
+ - name: Ensure twine is installed
+ command: pip install twine --user
+ when: pypi_twine_executable is not defined
+
+ - name: Set pypi twine executable
+ set_fact:
+ pypi_twine_executable: ~/.local/bin/twine
+ when: pypi_twine_executable is not defined
