Adds glob expression triggering CI for *all* changes in boards'
documentation, not just those matching the "*.rst" pattern since there
can also be images being changed without any other change on RST files.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
After rebasing the PR on main, the local copy of the repository may
still contain untracked directories and files (for example, the commits
from the pull request are "git mv"ing files out of directories that are
then left empty). Add a git clean so that we run CI in conditions
that are as close as possible to a fresh clone.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
There is no reason to use our custom runners for docs build
as it's equally fast on GH default runners and allows doc CI
to be expedited more quickly even when our build farm is
busy.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Use correct output for the changed-files action so that docs
is built in CI when relevant files are *deleted* too, not just
added/renamed/modified
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Compressing doc build to upload it to AWS S3 is talking several minutes.
Use -T0 to run xz in parallel mode to speed up the process.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Our documentation uses image formats such as WebP that are not supported
by LaTeX. This commit enables Sphinx's sphinx.ext.imageconverter
extension, and updates the documentation to indicate ImageMagick is
required to build docs.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit reduces the parallel job count for building the documentation
from the default value of 16 (i.e. `-j auto` aka. the vCPU count) to 14
because the total available RAM in the runners is 32GiB and each
sphinx-build process may use more than 2GiB of RAM, which can lead to
out-of-memory conditions.
Note that the HTML doc build process was parallelised prior to this change
in spite of the lack of `-j auto` in the CI workflow because the default
`SPHINXOPTS` includes `-j auto` and only `SPHINXOPTS_EXTRA` was specified
-- this commit explicitly adds the `SPHINXOPTS` for it with the default
value specified in doc/CMakeLists.txt to make the job count configurable
while ensuring the previous behaviour is preserved.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This reverts commit 3ba4c98a1d.
A repo from microsoft was not available, that lead to ci
actions failing. This hat been fixed, so this workaround
is no longer needed.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Bump tj-actions/changed-files to v44.
As of v42, input file patterns that end with a / now match all sub-files
within the directory without requiring to specify the globstar pattern.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
With the introduction of the new runners, the time it takes to build the
documentation in CI has slowed down to the point that the job often times
out.
Applied a conservative 2x factor to the timeouts that were in place.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit updates the doc-build workflow to use the new zephyr-runner v2
CI runner deployment.
It also installs additional system packages that are not available by
default in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Build phase was skipped, we were checking for file changes which will
not have any results on a scheduled event.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Update Github actions to their latest versions to fix the following
warnings on runs:
```
Node.js 16 actions are deprecated. Please update the following actions
to use Node.js 20: actions/checkout@v3, actions/cache@v3,
actions/upload-artifact@v3. For more information see:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
```
`actions/checkout` and `actions/cache` are straight Node version
upgrades, `actions/upload-artifact` and `actions/download-artifact` have
breaking changes, but don't appear to affect our usage.
https://github.com/actions/upload-artifact
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
Seems like the PDF build hit the "detected dubious ownership in
repository" issue that has already been worked around in other workflow.
Add that step here as well.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Skip the rebase step if it's not a pull request. Schedule and push runs
have no base ref to rebase against anyway, currently the step is failing
and being skipped.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
As documentation is now built using one of our self-hosted runners,
have the GitHub action only run for the upstream repo, not for potential
forks.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add a rebase step after checkout for the documentation build CI run.
This is in line with what pretty much all other workfloww already do,
and means that if a PR is opened on a broken tree and the breakage get
fixed, the PR run just have to be retried for the test to pass and we
don't have to ask the authors to rebase and lose any pending approvals.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Zephyr scripts do not require documentation dependencies, so let's
move them from scripts/ to doc/.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add a new CMake option to append options to SPHINXOPTS. This allows us
to easily extend default SPHINXOPTS. This patch also restores the "-j
auto" option in CI (now that we use a custom runner).
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
So that we see all the potential errors in CI and not just the first
and can assess how much work there is to do.
This was introduced for debuggin but gmarull has suggested keeping it
in.
Signed-off-by: Michael Jones <m.pricejones@gmail.com>
When PDF build fails, we want to see what cmaused the failure, so upload
the log for later analysis.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit updates the documentation build workflow to pull in the
'bsim' west project (with its submanifest) so that the build process
does not fail due to a manifest import failure.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the CI workflows to use the GitHub Ubuntu 22.04
virtual environment for running jobs.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
New LaTeX Docker image (Debian based) uses Python 3.11. On Debian
systems, this version does not allow to install packages to the system
environment using pip. Use a virtual environment instead.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
The release notes are in and west==1.0.0 is installable via pypi.
Move the doc build over to it and fix a typo while we are here.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
The alpha for this release is up on pypi; start using it so we can
test out the doc build in CI.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
It looks like versions >= 1.9.2 have disappeared from the Sourceforge
website. Since they use GH releases since 1.9.6, the version we use,
let's just update download URL.
Ref. https://github.com/doxygen/doxygen/issues/9801
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
This commit disables the PDF documentation build for pull request CI
runs because the HTML documentation build already validates the
documentation changes and the PDF build takes significantly longer than
the HTML build.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit increases the timeout for PDF documentation build job from
45 minutes to 60 minutes because it can occasionally take more than 45
minutes on the GitHub Actions hosted runners.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Use the latest Ubuntu image. There's no special reason for this change
other than staying up-to-date.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
This commit updates the CI workflows to use the latest "cache" action
v3, which is based on Node.js 16.
Note that Node.js 12-based actions are now deprecated by GitHub and may
stop working in the near future.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the latest
"upload-artifact" action v3, which is based on Node.js 16.
Note that Node.js 12-based actions are now deprecated by GitHub and may
stop working in the near future.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the latest "checkout"
action v3, which is based on Node.js 16.
Note that Node.js 12-based actions are now deprecated by GitHub and may
stop working in the near future.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the documentation build workflow to use a specific
upload-artifact action version, v3, instead of the latest master branch
in order to prevent any potential breakages due to the newer commits.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the documentation build and publish workflows to
use a specific runner image version, ubuntu-20.04, instead of the
latest version in order to prevent any potential breakages due to the
'latest' version change by GitHub.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Give documentation a bit more time to build, seems like we are hitting
the current 30 minutes limit.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>