67 строки
1.5 KiB
Bash
67 строки
1.5 KiB
Bash
#!/bin/bash
|
|
|
|
main() {
|
|
if [[ "${TRAVIS_EVENT_TYPE}" = "cron" ]] || [[ $1 = "publish" ]]; then
|
|
npm install
|
|
npm run build
|
|
publish Chatdown
|
|
publish Dispatch
|
|
publish Ludown
|
|
publish LUIS
|
|
publish LUISGen
|
|
publish MSBot
|
|
publish QnAMaker
|
|
else
|
|
(
|
|
set -e
|
|
npm install
|
|
npm install -g typescript
|
|
cd packages/LUISGen/tests/LUISGenTestJS/
|
|
npm install
|
|
cd ../../../../
|
|
npm run build
|
|
npm run coveralls
|
|
npm run tslint
|
|
npm run eslint
|
|
)
|
|
|
|
fi
|
|
errorcode=$?
|
|
|
|
if [ $errorcode -ne 0 ]; then
|
|
echo exiting with errorcode $errorcode
|
|
exit $errorcode
|
|
fi
|
|
}
|
|
|
|
function create_npmrc() {
|
|
cat > .npmrc << EOF
|
|
registry=https:\${NPM_REGISTRY}
|
|
\${NPM_REGISTRY}:_authToken=\${NPM_TOKEN}
|
|
EOF
|
|
}
|
|
|
|
function update_version() {
|
|
oldregistry=$(npm config get registry)
|
|
npm config set registry https://botbuilder.myget.org/F/botbuilder-tools-daily/npm/
|
|
pname=$(cat package.json | jq -r '.name' | cut -d- -f1)
|
|
pversion=$(cat package.json | jq -r '.version' | cut -d- -f1)
|
|
ppatch=$(npm view $pname version | cut -d- -f2 | rev | cut -d. -f1 | rev)
|
|
npm version --allow-same-version $pversion-$ppatch
|
|
npm version prerelease
|
|
npm config set registry $oldregistry
|
|
}
|
|
|
|
function publish() {
|
|
echo Publish $1
|
|
pushd packages
|
|
pushd $1
|
|
create_npmrc
|
|
update_version
|
|
npm publish
|
|
popd
|
|
popd
|
|
}
|
|
|
|
main "$@"
|