diff options
Diffstat (limited to '')
-rwxr-xr-x | aux/workflow/public.sh | 63 |
1 files changed, 54 insertions, 9 deletions
diff --git a/aux/workflow/public.sh b/aux/workflow/public.sh index 8ecb855..be32ac1 100755 --- a/aux/workflow/public.sh +++ b/aux/workflow/public.sh @@ -1,17 +1,62 @@ #!/bin/sh set -eu -PROJECT_UC="$1" -PROJECT="$2" -MAILING_LIST="$3" +PROJECT_UC= +while getopts 'n:N:m:o:l:' flag; do + case "$flag" in + n) + PROJECT="$OPTARG" + ;; + N) + PROJECT_UC="$OPTARG" + ;; + m) + MAILING_LIST="$OPTARG" + ;; + o) + OUTDIR="$OPTARG" + ;; + l) + LANGS="$OPTARG" + ;; + *) + exit 2 + ;; + esac +done +shift $((OPTIND - 1)) -sh aux/workflow/TODOs.sh "$PROJECT_UC" "$PROJECT" "$MAILING_LIST" -sh aux/workflow/commonmark.sh "$PROJECT" README.md index.html ||: +assert_arg() { + if [ -z "$1" ]; then + echo "Missing $2" >&2 + exit 2 + fi +} -if [ -f CHANGELOG.md ]; then - sh aux/workflow/commonmark.sh "$PROJECT" CHANGELOG.md +assert_arg "${PROJECT:-}" '-n PROJECT' +assert_arg "${MAILING_LIST:-}" '-m MAILING_LIST' +assert_arg "${OUTDIR:-}" '-o OUTDIR' + +if [ -z "${PROJECT_UC:-}" ]; then + PROJECT_UC="$PROJECT" fi -sh aux/ci/report.sh "$PROJECT" +mkdir -p "$OUTDIR" + +sh aux/workflow/TODOs.sh -N "$PROJECT_UC" -n "$PROJECT" -m "$MAILING_LIST" -o "$OUTDIR" + +sh aux/workflow/commonmark.sh -N "$PROJECT" -o "$OUTDIR" -r README.md -w index.html -Len +if [ -f CHANGELOG.md ]; then + sh aux/workflow/commonmark.sh -N "$PROJECT" -o "$OUTDIR" -r CHANGELOG.md -Len +fi +if [ -n "${LANGS:-}" ]; then + for lang in $LANGS; do + sh aux/workflow/commonmark.sh -N "$PROJECT" -o "$OUTDIR" -r "README.$lang.md" -w "$lang/index.html" -L "$lang" + if [ -f CHANGELOG.md ]; then + sh aux/workflow/commonmark.sh -N "$PROJECT" -o "$OUTDIR" -r "CHANGELOG.$lang.md" -w "$lang/CHANGELOG.html" -L "$lang" + fi + done +fi -cp aux/workflow/favicon.* public/ +sh aux/ci/report.sh -n "$PROJECT" -o "$OUTDIR" +cp aux/workflow/favicon.svg aux/workflow/favicon.png "$OUTDIR" |