68 lines
1.4 KiB
Bash
Executable File
68 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
|
|
cd `dirname $0`/..
|
|
SOURCE=`pwd`
|
|
|
|
mkdir -p .apigenerator
|
|
|
|
# check if api dir is clean
|
|
if ! [ -f .apigenerator/.git/HEAD ]; then
|
|
git clone git@github.com:ajaxorg/ace-api-docs.git .apigenerator
|
|
fi
|
|
|
|
pushd .apigenerator
|
|
git pull origin master # fetch
|
|
|
|
rm -rf ./doc
|
|
|
|
npm i
|
|
export ACE_VERSION="v$(node -p 'require("../package.json").version')"
|
|
node generateAnnotations.js ../src
|
|
node generateNewDts.js ace.d.ts
|
|
node generateDoc.js ./doc
|
|
|
|
rm -rf ./doc-repo
|
|
git worktree prune
|
|
git worktree add --force --no-checkout doc-repo origin/gh-pages
|
|
|
|
cd doc-repo
|
|
mv ../doc/* .
|
|
git reset origin/gh-pages
|
|
git add .
|
|
|
|
if [ "$(git status --porcelain)" ]; then
|
|
git commit -m "build api reference $ACE_VERSION"
|
|
git push origin HEAD:gh-pages --force
|
|
fi
|
|
|
|
popd
|
|
|
|
|
|
|
|
git worktree prune
|
|
rm -rf .apigenerator/ace-gh-pages
|
|
git worktree add --force --no-checkout .apigenerator/ace-gh-pages HEAD
|
|
|
|
|
|
pushd .apigenerator/ace-gh-pages
|
|
git reset > /dev/null
|
|
git rm -rf api || :
|
|
mv ../doc-repo ./api
|
|
echo '[submodule "doc/wiki"]
|
|
path = doc/wiki
|
|
url = https://github.com/ajaxorg/ace.wiki.git
|
|
[submodule "build"]
|
|
path = build
|
|
url = https://github.com/ajaxorg/ace-builds.git
|
|
[submodule "api"]
|
|
path = api
|
|
url = https://github.com/ajaxorg/ace-api-docs.git' > .gitmodules
|
|
git add .gitmodules api
|
|
|
|
git commit -m "build api reference $ACE_VERSION"
|
|
|
|
git push --progress "origin" HEAD:refs/heads/gh-pages --force
|
|
|
|
popd |