From 7da8c27ae5164e1c5ef0dd7cc966a2f8985b4681 Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Fri, 19 Jun 2020 14:38:50 +0200 Subject: [PATCH] Fix horizon-nodejs jobs Tox is not anymore pre-installed on the OpenDev CI images. The file package.json needs tox, install it to fix the job. Install it via a pre-run playbook so that this is run in addition to all of the playbooks of the parent. Note for the reviewer in stable/stein we run nodejs-4 jobs as runtime. I have cherry-pick this change from master which run nodejs-10 job but simliar changes fixes the nodejs-4 jobs So I have added pre-run playbook for nodejs-4 job as well. Note in stable/rocky: We used nodejs4-jobs from openstack-zuul-jobs which consumes npm jobs from zuul-jobs. We would like to install tox in the 'pre-run' phase in each npm job, so this commit borrows the npm job definitions in stable/stein including the cherry-picked commit. Conflicts: .zuul.yaml Resolved automatically. Change-Id: Icf82fa96f7d90453f78cf564c847682a286ed575 (cherry picked from commit 7cd0debebe1a300a96f8d0f21626793be0a0bc41) (cherry picked from commit 8da0dcd21200cc851e57de4dfa46c3c838c73c3c) (cherry picked from commit 8f8ed624082613b7f249e94afab4e50202b22a1d) (cherry picked from commit 301c34b91165d42ff088d05983fc24a52649687d) --- .zuul.yaml | 39 ++++++++++++++++++++++++++++++- playbooks/horizon-nodejs/pre.yaml | 6 +++++ 2 files changed, 44 insertions(+), 1 deletion(-) create mode 100644 playbooks/horizon-nodejs/pre.yaml diff --git a/.zuul.yaml b/.zuul.yaml index 5a8d078057..33f5f42989 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -32,6 +32,43 @@ vars: tox_envlist: selenium-headless +- job: + name: horizon-nodejs4-run-lint + parent: nodejs-run-lint + description: | + Run lint using Node 4 for horizon plugins. + vars: + node_version: 4 + nodeset: ubuntu-xenial + pre-run: playbooks/horizon-nodejs/pre.yaml + required-projects: + openstack/horizon + +- job: + name: horizon-nodejs4-run-test + parent: nodejs-run-test-browser + description: | + Run test using Node 4 for horizon plugins. + vars: + node_version: 4 + nodeset: ubuntu-xenial + pre-run: playbooks/horizon-nodejs/pre.yaml + required-projects: + openstack/horizon + +- project-template: + name: horizon-nodejs4-jobs + description: | + Run lint and test jobs using Node 4 for horizon plugins. + check: + jobs: + - horizon-nodejs4-run-lint + - horizon-nodejs4-run-test + gate: + jobs: + - horizon-nodejs4-run-lint + - horizon-nodejs4-run-test + - project: templates: - openstack-python-jobs @@ -40,7 +77,7 @@ - periodic-stable-jobs - check-requirements - release-notes-jobs - - nodejs4-jobs + - horizon-nodejs4-jobs check: jobs: - horizon-openstack-tox-py27dj110 diff --git a/playbooks/horizon-nodejs/pre.yaml b/playbooks/horizon-nodejs/pre.yaml new file mode 100644 index 0000000000..b346b04629 --- /dev/null +++ b/playbooks/horizon-nodejs/pre.yaml @@ -0,0 +1,6 @@ +- hosts: all + roles: + # package.json needs to run 'tox' as command, ensure that it's + # installed and can be used globally. + - role: ensure-tox + ensure_global_symlinks: True