Radish alpha
h
Radicle Heartwood Protocol & Stack
Radicle
Git (anonymous pull)
Log in to clone via SSH
ci: Fix man page build
Alexis Sellier committed 2 years ago
commit 170417f974af9707ed58b5ee14d000e1b5ad5899
parent af28a0ca07c2a0601e39b14fe3054ecb3f9a3bbc
3 files changed +56 -26
deleted .github/workflows/build-man-pages.sh
@@ -1,16 +0,0 @@
-
#!/bin/sh
-

-
set -e
-

-
if [ $# -lt 2 ]; then
-
  echo "usage: $0 <output-dir> <input-file>..."
-
  exit 1
-
fi
-

-
outdir="$1"
-
shift
-

-
for input in "$@"; do
-
  echo "Building $input.."
-
  asciidoctor --doctype manpage --backend manpage --destination-dir "$outdir" "$input"
-
done
modified .github/workflows/build.bash
@@ -1,19 +1,45 @@
-
#!/bin/bash
-

-
set -o errexit
-
set -o nounset
-
set -o pipefail
+
#!/bin/sh
+

+
set -e
+

+
# Attempt to install `asciidoctor` on Debian, Arch Linux and MacOS.
+
install() {
+
  os="$(uname)"
+

+
  case "$os" in
+
    Linux)
+
      if command -v apt-get >/dev/null 2>&1; then
+
        # Debian
+
        apt-get update
+
        apt-get install -y asciidoctor
+
      elif command -v pacman >/dev/null 2>&1; then
+
        # Arch Linux
+
        pacman -Sy --noconfirm asciidoctor
+
      fi ;;
+
    Darwin) # MacOS
+
      if command -v brew >/dev/null 2>&1; then
+
        brew install asciidoctor
+
      fi ;;
+
    *)
+
      echo "fatal: unknown operating system: $os"
+
      exit 1 ;;
+
  esac
+
}

main () {
-
    if [[ $# -ne 1 ]]; then
+
    if [ $# -ne 1 ]; then
        echo "$#: Wrong number of arguments"
-
        return 1
+
        exit 1
+
    fi
+

+
    if ! command -v asciidoctor >/dev/null 2>&1; then
+
      install
    fi

-
    local target=$1
+
    target="$1"
    rustup target add "$target"

-
    local staging="radicle-$target"
+
    staging="radicle-$target"
    mkdir -p "$staging"

    cargo build --target="$target" --package=radicle-httpd --release
@@ -28,7 +54,7 @@ main () {
    cargo build --target="$target" --bin git-remote-rad --release
    cp target/"$target"/release/git-remote-rad "$staging"/

-
    ./build-man-pages.sh "$staging" "$(find . -name '*.1.adoc')"
+
    scripts/build-man-pages.sh "$staging" "$(find . -name '*.1.adoc')"

    tar czf "$staging.tar.gz" "$staging"
    cp "$staging.tar.gz" "$staging"/
added scripts/build-man-pages.sh
@@ -0,0 +1,20 @@
+
#!/bin/sh
+

+
set -e
+

+
main() {
+
  if [ $# -lt 2 ]; then
+
    echo "usage: $0 <output-dir> <input-file>..."
+
    exit 1
+
  fi
+

+
  outdir="$1"
+
  shift
+

+
  for input in "$@"; do
+
    echo "Building $input.."
+
    asciidoctor --doctype manpage --backend manpage --destination-dir "$outdir" "$input"
+
  done
+
}
+

+
main "$@"