mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2024-01-19 02:48:50 +00:00
fb72f3ad52
Using `set -ex` will exit the script as soon as a non-zero exit code is returned, such as when the docker image fails building the docs due to `build --strict` catching broken links. This also removes the need for `|| exit` when changing directory. This seems fine for a small script, but AFAIK an alternative fix is just adding `|| exit` to the end of the `docker run` command too? There appears to be advice [against adopting `-e` carelessly](http://mywiki.wooledge.org/BashFAQ/105), while others [encourage `-e`](http://redsymbol.net/articles/unofficial-bash-strict-mode/). I know that several maintainers here have preference towards `set -e` so I've kept the original PR solution. Additionally: - `-x` is used to improve command visibility when reviewing the workflow log output. - `--name` isn't necessary, but was part of the original PR. - I've chosen not to include `-o pipefail`, only because no pipes are used in this script. * docs(fix): Fix broken links * ci(docs): Added inline docs Extra documentation context for maintainers to quickly grok what's going on. * chore(docs): Minor typo fix by wernerfred Added from their related PR by request.
22 lines
720 B
Bash
Executable file
22 lines
720 B
Bash
Executable file
#!/bin/bash
|
|
set -ex
|
|
|
|
# PWD should be at the project docs/ folder.
|
|
# `--user` is required for build output file ownership to match the CI user,
|
|
# instead of the internal root user of the container.
|
|
# `build --strict` ensures the build fails when any warnings are omitted.
|
|
docker run \
|
|
--rm \
|
|
--user "$(id -u):$(id -g)" \
|
|
--volume "${PWD}:/docs" \
|
|
--name "build-docs" \
|
|
squidfunk/mkdocs-material:7.3.5 build --strict
|
|
|
|
# Remove unnecessary build artifacts: https://github.com/squidfunk/mkdocs-material/issues/2519
|
|
# site/ is the build output folder.
|
|
cd site
|
|
find . -type f -name '*.min.js.map' -delete -o -name '*.min.css.map' -delete
|
|
rm sitemap.xml.gz
|
|
rm assets/images/favicon.png
|
|
rm -r assets/javascripts/lunr
|