You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
2.3 KiB
70 lines
2.3 KiB
- name: Install pip |
|
include_role: |
|
name: ensure-pip |
|
|
|
# NOTE: gettext command is provided by gettext-base package, |
|
# so we need to check a command provided by gettext package. |
|
- name: Check for gettext installed |
|
command: bash -c "type msgmerge" |
|
failed_when: false |
|
register: gettext_exists |
|
|
|
# TODO(mordred) Make this a list of known binary depends that sphinx needs |
|
- name: Install gettext package |
|
package: |
|
name: gettext |
|
state: present |
|
become: yes |
|
when: gettext_exists.rc != 0 |
|
|
|
- name: Find Constraints File |
|
include_role: |
|
name: find-constraints |
|
|
|
# We're not using with_first_found because the files are remote, not local. |
|
# We want to use doc/requirements.txt or releasenotes/requirements.txt |
|
# if it exists else we want to fallback to test-requirements.txt. |
|
- name: Get requirements files |
|
shell: |
|
executable: /bin/bash |
|
chdir: "{{ zuul_work_dir }}" |
|
cmd: | |
|
for f in doc/requirements.txt releasenotes/requirements.txt test-requirements.txt ; do |
|
if [ -f $f ] ; then |
|
echo $f |
|
break |
|
fi |
|
done |
|
register: requirements_file |
|
|
|
# Ensure we have the latest pip and setuptools in the sphinx venv, not the system |
|
# one. Older pips don't do things like parse version constraints or |
|
# rust build flags correctly, setuptools<39.2.0 do not support reading version |
|
# from file and some jobs like the translate jobs |
|
# use this environment to install from master requirements.txt that |
|
# needs this sort of thing to work. |
|
- name: Setup virtual environment |
|
pip: |
|
name: |
|
- pip |
|
- setuptools |
|
virtualenv: '{{ zuul_work_virtualenv }}' |
|
virtualenv_command: '{{ ensure_pip_virtualenv_command }}' |
|
extra_args: '--upgrade' |
|
|
|
- name: Install base doc building packages |
|
pip: |
|
name: "{{ doc_building_packages | union(doc_building_extra_packages) }}" |
|
chdir: "{{ zuul_work_dir }}" |
|
virtualenv: "{{ zuul_work_virtualenv }}" |
|
virtualenv_command: "{{ ensure_pip_virtualenv_command }}" |
|
extra_args: "{{ upper_constraints | default(omit) }}" |
|
|
|
- name: Install found doc requirements |
|
pip: |
|
requirements: "{{ requirements_file.stdout }}" |
|
chdir: "{{ zuul_work_dir }}" |
|
virtualenv: "{{ zuul_work_virtualenv }}" |
|
virtualenv_command: "{{ ensure_pip_virtualenv_command }}" |
|
extra_args: "{{ upper_constraints | default(omit) }}" |
|
when: requirements_file.stdout_lines
|
|
|