
I can't exactly say why, but the horizon postinstall in package.json runs "tox -e npm" [1]. This then installs from requirements [2]. The requirements gate run a cross-horizon-npm job that ends up calling this. The short story is that if you modify upper-constraints.txt in a requirements change, it is not picked up by this job. Add tox_constraints_file to this job, so we can set the path to the zuul checked-out version for the test. [1]e515713084/package.json (L22)
[2]e515713084/tox.ini (L23)
Needed-By: https://review.opendev.org/709389 Change-Id: Ia7dd5af19b42c2ab53dfb70f92e184b0dc215d03
45 lines
1.2 KiB
YAML
45 lines
1.2 KiB
YAML
- name: Check to see if the constraints file exists
|
|
stat:
|
|
path: "{{ tox_constraints_file }}"
|
|
get_checksum: false
|
|
get_mime: false
|
|
get_md5: false
|
|
register: stat_results
|
|
when: tox_constraints_file is defined
|
|
|
|
- name: Fail if constraints file is missing
|
|
when: tox_constraints_file is defined and not stat_results.stat.exists
|
|
fail:
|
|
msg: tox_constraints_file is defined but was not found
|
|
|
|
- name: Record file location
|
|
set_fact:
|
|
tox_constraints_env:
|
|
TOX_CONSTRAINTS_FILE: "{{ tox_constraints_file }}"
|
|
# Backward compatibility, to be removed
|
|
UPPER_CONSTRAINTS_FILE: "{{ tox_constraints_file }}"
|
|
when: tox_constraints_file is defined
|
|
|
|
- name: Check for yarn.lock file
|
|
stat:
|
|
path: "{{ zuul_work_dir }}/yarn.lock"
|
|
get_checksum: false
|
|
get_mime: false
|
|
get_md5: false
|
|
register: yarn_lock
|
|
|
|
- name: Install yarn dependencies
|
|
command: yarn install
|
|
environment:
|
|
DISPLAY: ':99'
|
|
args:
|
|
chdir: "{{ zuul_work_dir }}"
|
|
when: yarn_lock.stat.exists
|
|
|
|
- name: Install npm dependencies
|
|
command: npm install --verbose
|
|
environment: "{{ npm_environment|combine(tox_constraints_env|default({})) }}"
|
|
args:
|
|
chdir: "{{ zuul_work_dir }}"
|
|
when: not yarn_lock.stat.exists
|