on a059c71 help sign in
gogol/script/hackage-documentation
29 lines 884 B history raw
1#!/usr/bin/env bash
3set -e
5: ${PACKAGE?}
6: ${PASSWORD?}
8STACKVER=$(cat $PACKAGE.cabal|grep '^version:'|head -1|awk '{print $2}')
9STACKDOCDIR=$PACKAGE-$STACKVER-docs
10OUTPUT=dist/doc
12stack haddock --fast $PACKAGE
14rm -rf $OUTPUT/$STACKDOCDIR
15mkdir -p $OUTPUT
17cp -r $(stack path --local-doc-root)/$PACKAGE-$STACKVER $OUTPUT/$STACKDOCDIR
19sed -i 's/href="\.\.\/\([^/]*\)\//href="..\/..\/\1\/docs\//g' $OUTPUT/$STACKDOCDIR/*.html
21(cd $OUTPUT && tar cvz --format=ustar -f $STACKDOCDIR.tar.gz $STACKDOCDIR)
23curl -X PUT \
24 -H 'Content-Type: application/x-tar' \
25 -H 'Content-Encoding: gzip' \
26 -u BrendanHay:$PASSWORD \
27 --digest \
28 --data-binary @"$OUTPUT/$STACKDOCDIR.tar.gz" \
29 https://hackage.haskell.org/package/$PACKAGE-$STACKVER/docs