UNPKG

@singleton-i18n/js-core-sdk

Version:

A JavaScript Singleton client library for internationalization and localization that leverage data from Singleton service. The library works both for the browser and as a Node.js module.

103 lines (102 loc) 4.56 kB
dist: trusty language: node_js node_js: - "10" python: - 3.4 before_install: - | git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '\.md$' || { echo "Only docs were updated, stopping build process." exit } sudo apt-get -y install unzip sudo apt-get -y install wget sudo apt-get -y install python3-pip python-dev python3 -V pip3 -V install: - sudo pip3 install requests jobs: include: - name: "Check Header" env: TEST=check_header - name: "Unit Test" env: TEST=unit_test - name: "Code Scan" env: TEST=code_scan - name: "Smoke Test" env: TEST=smoke_test script: > if [ x${TEST} = xcheck_header ]; then git clone --branch=devops https://github.com/vmware/singleton.git devops cp $TRAVIS_BUILD_DIR/devops/check_headers.py . chmod +x check_headers.py python3 ./check_headers.py -f "$(git diff --name-only --diff-filter=d $TRAVIS_COMMIT_RANGE)" fi && if [ x${TEST} = xunit_test ]; then npm install --registry https://registry.npmjs.org npm run test fi && if [ x${TEST} = xcode_scan ]; then SONARSCANNER='sonar-scanner-cli-4.0.0.1744-linux' SONARSCANNERINNER='sonar-scanner-4.0.0.1744-linux' npm install npm npm install tslint npm install typescript tsc -v wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/$SONARSCANNER.zip unzip $SONARSCANNER.zip rm -f $SONARSCANNER.zip mkdir -p g11n-js-client shopt -s extglob mv !($SONARSCANNERINNER|g11n-js-client) g11n-js-client/ git clone --branch=devops https://github.com/vmware/singleton.git devops cp -a devops/sonar/* . rm -rf devops cd g11n-js-client npm install --registry https://registry.npmjs.org str=$(printf '=%.0s' {1..50}) echo $str Unit Test Start $str npm run test echo $str Unit Test End $str cd .. python ./config_sonar_project.py -ProjectName $SONAR_ORG-singleton-js-core-sdk-$TRAVIS_BRANCH -ProjectKey $SONAR_ORG-singleton-js-core-sdk-$TRAVIS_BRANCH -OrgKey $SONAR_ORG -QualityGateName js-core-sdk-gate -QualityGateConditions ./quality_gates/js-core-sdk.json -SonarToken $SONAR_TOKEN echo $str Code Scan Start $str ./$SONARSCANNERINNER/bin/sonar-scanner -Dsonar.sources=./g11n-js-client -Dsonar.exclusions=**/node_modules/**/* -Dsonar.coverage.exclusions=**/samples/**/* -Dsonar.projectName=$SONAR_ORG-singleton-js-core-sdk-$TRAVIS_BRANCH -Dsonar.branch.name=master -Dsonar.projectKey=$SONAR_ORG-singleton-js-core-sdk-$TRAVIS_BRANCH -Dsonar.host.url=https://sonarcloud.io -Dsonar.organization=$SONAR_ORG -Dsonar.login=$SONAR_TOKEN -Dsonar.javascript.lcov.reportPaths=./g11n-js-client/coverage/lcov.info -Dsonar.typescript.lcov.reportPaths=./g11n-js-client/coverage/lcov.info echo $str Code Scan End $str git diff --name-only $TRAVIS_COMMIT_RANGE | grep -qvE '\.travis\.yml$' || { echo "No need to check sonar quality gate for only travis configuration updates" exit } sleep 5 && python3 ./check_sonar_qualitygate.py -ProjectKeyPrefixArray=$SONAR_ORG-singleton-js-core-sdk-$TRAVIS_BRANCH -HostName=https://sonarcloud.io fi && if [ x${TEST} = xsmoke_test ]; then TZ='Asia/Shanghai'; export TZ mkdir -p g11n-js-client shopt -s extglob mv !(g11n-js-client) g11n-js-client/ mv .npmignore g11n-js-client/ git clone --branch=master https://github.com/vmware/singleton.git service git clone --branch=devops https://github.com/vmware/singleton.git devops mkdir -p service/g11n-ws/vip-manager-i18n/src/main/resources/l10n/bundles/ cp -a devops/autotest/client/jscoresdk/resources/bundles/JSCoreSDKTest service/g11n-ws/vip-manager-i18n/src/main/resources/l10n/bundles/ cd $TRAVIS_BUILD_DIR/service/g11n-ws && ./gradlew build -x test cp $TRAVIS_BUILD_DIR/devops/deploy/i18n-service/Dockerfile $TRAVIS_BUILD_DIR/service/publish/ cd $TRAVIS_BUILD_DIR/service/publish && mv singleton-[0-9\.]*.jar i18n-service.jar docker build -t singleton . docker run -d -p 8090:8090 -p 8091:8091 --name singleton singleton docker ps cd $TRAVIS_BUILD_DIR cd g11n-js-client sed -i 's:@vip/vip-core-sdk-server:@vip/vip-core-sdk-dev:' package.json npm install --registry https://registry.npmjs.org npm link cd $TRAVIS_BUILD_DIR/devops/autotest/client/jscoresdk npm install --registry https://registry.npmjs.org npm link @vip/vip-core-sdk-dev str=$(printf '=%.0s' {1..50}) echo $str Smoke Test Start $str ./node_modules/.bin/jest echo $str Smoke Test End $str fi