diff --git a/.travis.yml b/.travis.yml index d12a5d4..dec6242 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,6 +13,9 @@ notifications: script: sh build-package.sh +env: + - APM_TEST_PACKAGES="language-typescript language-csharp" + before_install: # Update Homebrew - brew update diff --git a/build-package.sh b/build-package.sh index 2ffd1f4..6294939 100644 --- a/build-package.sh +++ b/build-package.sh @@ -1,45 +1,42 @@ #!/bin/sh -echo "Downloading node v0.10.22..." -curl -s -O http://nodejs.org/dist/v0.10.22/node-v0.10.22-darwin-x64.tar.gz -tar -zxf node-v0.10.22-darwin-x64.tar.gz -export PATH=$PATH:$PWD/node-v0.10.22-darwin-x64/bin - echo "Downloading latest Atom release..." curl -s -L "https://atom.io/download/mac" \ --H 'Accept: application/octet-stream' \ --o atom.zip + -H 'Accept: application/octet-stream' \ + -o atom.zip mkdir atom unzip -q atom.zip -d atom +export PATH=$PWD/atom/Atom.app/Contents/Resources/app/apm/bin:$PATH echo "Using Atom version:" ATOM_PATH=./atom ./atom/Atom.app/Contents/Resources/app/atom.sh -v echo "Downloading package dependencies..." -atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm update +atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm clean +atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install -echo "Download package Atom dependencies..." -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-c -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-coffee-script -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-css -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-html -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-java -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-javascript -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-json -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-less -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-mustache -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-objective-c -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-perl -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-php -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-python -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-ruby -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-sass -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-sql -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-xml -# atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-gfm -atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-typescript -atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install language-csharp +TEST_PACKAGES="${APM_TEST_PACKAGES:=none}" + +if [ "$TEST_PACKAGES" != "none" ]; then + echo "Installing atom package dependencies..." + for pack in $TEST_PACKAGES ; do + atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm install $pack + done +fi + +if [ -f ./node_modules/.bin/coffeelint ]; then + if [ -d ./lib ]; then + echo "Linting package..." + ./node_modules/.bin/coffeelint lib + rc=$?; if [[ $rc != 0 ]]; then exit $rc; fi + fi + if [ -d ./spec ]; then + echo "Linting package specs..." + ./node_modules/.bin/coffeelint spec + rc=$?; if [[ $rc != 0 ]]; then exit $rc; fi + fi +fi echo "Running specs..." ATOM_PATH=./atom atom/Atom.app/Contents/Resources/app/apm/node_modules/.bin/apm test --path atom/Atom.app/Contents/Resources/app/atom.sh