Skip to content
This repository was archived by the owner on Jun 2, 2020. It is now read-only.

Commit 320198c

Browse files
author
Lars Gierth
committed
Build markdown API docs for JS and Go packages
1 parent fff3e07 commit 320198c

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

package.sh

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
#!/usr/bin/env bash
2+
3+
set -ex
4+
5+
usage() {
6+
echo "Usage: package.sh github.com/some-org/some-repo v1.2.3 path/to/destination/"
7+
exit 1
8+
}
9+
10+
[ "$1" ] || usage
11+
[ "$2" ] || usage
12+
[ "$3" ] || usage
13+
14+
repo="$(echo "$1" | sed -e 's/^https:\/\///' -e 's/git:\/\///' -e 's/[email protected]:/github.com\//' -e 's/\.git$//')"
15+
name="$(echo "$repo" | sed -e 's/.*\///')"
16+
ref="$2"
17+
dest="$3"
18+
19+
if echo "$name" | grep -P '^go-' > /dev/null; then
20+
21+
# Go: get the source, run godoc2md
22+
export GOPATH="$(pwd)/tmp/gopath"
23+
go get -d -u -v "$repo"
24+
(cd "$GOPATH/src/$repo" && git reset --hard HEAD && git fetch && git checkout "$ref")
25+
mkdir -vp "$dest/$name"
26+
cat <<EOF > "$dest/$name/index.md"
27+
+++
28+
title = "$name"
29+
description = "Reference for $name package"
30+
+++
31+
32+
$(godoc2md -v "$repo")
33+
EOF
34+
else
35+
36+
# JS: clone repo, npm install, run aegir docs
37+
tmpdir="tmp/js"
38+
mkdir -vp "$tmpdir"
39+
if [ ! -d "$tmpdir/$name" ]; then
40+
git clone -q "https://$repo" "$tmpdir/$name"
41+
else
42+
(cd "$tmpdir/$name" && git reset --hard HEAD && git fetch && git checkout "$ref")
43+
fi
44+
45+
cd "$tmpdir/$name"
46+
npm install --save
47+
# npm link aegir
48+
node_modules/.bin/aegir docs -m
49+
cd -
50+
mkdir -vp "$dest/$name"
51+
cat "$tmpdir/$name/docs/index.md" | sed -e 's/^<!--.*$//' > "$dest/$name/index.md"
52+
fi

0 commit comments

Comments
 (0)