There's no reason to not just build the tarball when we build the
content.
Set the default value for node_version in the base job.
Change-Id: Ifb3e5138e9ae19ec3de9250f1828fc07230ef739
Some javascript operations, like running tests for web-apps, need
browsers. Javascript packages that are not targetting browsers
do not.
Make a -browser version that installs the browsers and xvfb, and
a non-browser version that does not.
Change-Id: I33c12cb0d9516bdffef7d8d04af4dbcb03ed8355
We have a bunch of jobs that are built around the npm role, but
for projects using yarn, that can lead to ignoring yarn.lock.
For projects with a yarn.lock, we can assume the user wants to
use yarn. Make a new js-package-manager role that can detect
if that's the case and otherwise use npm. Make an js_build_tool
parameter that allows the user to override that auto-detection.
Make a whole new suite of jobs that do this behavior, do not have
npm in their name, and default to the latest node LTS, version 14.
Don't install yarn if we're not going to use yarn. Also allow people
who want to use yarn but don't have a yarn.lock to override
js_build_tool everywhere we do that logic.
Mark the old jobs deprecated.
Shift the npm and yarn roles to use the new js-package-manager role
with defaults set.
Change-Id: I8013228ca05607a69f390a9bb75991fc6543f865
When producing javascript content tarballs, return artifact records
to Zuul.
Add a new job, build-javascript-content-tarball, which includes the
role to fetch javascript content tarballs.
Change-Id: Ia247054d0523b81916815151fd57138469f634e0
This splits all of the current job and role documentation into
files by subject area so that jobs and roles are easier for users to
find.
This will require that any future new jobs or roles add a line to the
appropriate area of the documentation, since that can no longer be
done automatically. A linter check is added to ensure that every
job and role continue to be documented.
After this refactor, we can begin to enhance the documentation pages
so that they include narrative documentation and subsections.
Change-Id: Ia6f0e89b57e3cb0d7d1745206384c946506d7ea0