Fix external frontend plugin dependency collision

Since I7e313dd111 plugins/package.json is exposing typescript-api that
the plugins might depend on. Previously, the supported way to add custom
frontend plugin dependencies was to overwrite the plugins/package.json
in gerrit core with plugin specific version of package.json.

Given that some front end plugins provide package.json file and depend
in the plugins/package.json file in gerrit core, we have now collision
problem. To rectify, we rename the expected package.json with custom
plugin dependencies from package.json to external_package.json. This is
also similar to the naming convention for java specific dependencies:
external_plugin_deps.bzl.

Bug: Issue 15931
Change-Id: I7c9de28e5100c1480d6021416013535b09843165
8 files changed
tree: 4d138a491c3758175b325a0b73af414057f28065
  1. jenkins/
  2. jenkins-docker/
  3. vars/
  4. worker/
  5. .gitignore
  6. Jenkinsfile
  7. README.md
  8. yamllint-config.yaml
README.md

Gerrit CI scripts

Providing jobs

This project uses Jenkins Jobs Builder [1] to generate jobs from yaml descriptor files.

To add new jobs reuse existing templates, defaults etc. as much as possible. E.g. adding a job to build an additional branch of a project may be as easy as adding the name of the branch to an existing project.

To ensure well readable yaml-files, use yamllint [2] to lint the yaml-files. Yamllint can be downloaded using Python Pip:

pip3 install yamllint

To run the linter, execute this command from the project's root directory:

yamllint -c yamllint-config.yaml jenkins/**/*.yaml

Yamllint will not fix detected issues itself.

[1] https://docs.openstack.org/infra/jenkins-job-builder/index.html [2] https://pypi.org/project/yamllint/