diff --git a/build/tfs/common/node.sh b/build/tfs/common/node.sh new file mode 100755 index 00000000000..87f95a5e1d7 --- /dev/null +++ b/build/tfs/common/node.sh @@ -0,0 +1,15 @@ +#!/bin/bash +set -e + +# setup nvm +if [[ "$OSTYPE" == "darwin"* ]]; then + export NVM_DIR=~/.nvm + source $(brew --prefix nvm)/nvm.sh +else + source $NVM_DIR/nvm.sh +fi + +# install node +NODE_VERSION=7.10.0 +nvm install $NODE_VERSION +nvm use $NODE_VERSION \ No newline at end of file diff --git a/build/tfs/darwin/build.sh b/build/tfs/darwin/build.sh index 6397b310dca..afa70c29960 100755 --- a/build/tfs/darwin/build.sh +++ b/build/tfs/darwin/build.sh @@ -1,5 +1,6 @@ #!/bin/sh +. ./build/tfs/common/node.sh . ./scripts/env.sh . ./build/tfs/common/common.sh diff --git a/build/tfs/linux/Dockerfile b/build/tfs/linux/Dockerfile index eba237b8a37..57ee735bbb7 100644 --- a/build/tfs/linux/Dockerfile +++ b/build/tfs/linux/Dockerfile @@ -36,4 +36,8 @@ ADD xvfb.init /etc/init.d/xvfb RUN chmod +x /etc/init.d/xvfb RUN update-rc.d xvfb defaults +# nvm +ENV NVM_DIR /usr/local/nvm +RUN curl https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash + CMD (service xvfb start; export DISPLAY=:10; ./start.sh) \ No newline at end of file diff --git a/build/tfs/linux/build.sh b/build/tfs/linux/build.sh index a2e0010ed03..babc6fdf182 100755 --- a/build/tfs/linux/build.sh +++ b/build/tfs/linux/build.sh @@ -1,5 +1,6 @@ #!/bin/bash +. ./build/tfs/common/node.sh . ./scripts/env.sh . ./build/tfs/common/common.sh diff --git a/build/tfs/win32/1_build.ps1 b/build/tfs/win32/1_build.ps1 index 34b44826fc0..8e4742da6f1 100644 --- a/build/tfs/win32/1_build.ps1 +++ b/build/tfs/win32/1_build.ps1 @@ -4,6 +4,7 @@ Param( [string]$vsoPAT ) +. .\build\tfs\win32\node.ps1 . .\scripts\env.ps1 . .\build\tfs\win32\lib.ps1 diff --git a/build/tfs/win32/2_package.ps1 b/build/tfs/win32/2_package.ps1 index 63d7c9cc412..4cb1978bbad 100644 --- a/build/tfs/win32/2_package.ps1 +++ b/build/tfs/win32/2_package.ps1 @@ -2,6 +2,7 @@ Param( [string]$arch ) +. .\build\tfs\win32\node.ps1 . .\build\tfs\win32\lib.ps1 step "Create archive and setup package" { diff --git a/build/tfs/win32/3_upload.ps1 b/build/tfs/win32/3_upload.ps1 index 3f23b6d1831..8d10c908261 100644 --- a/build/tfs/win32/3_upload.ps1 +++ b/build/tfs/win32/3_upload.ps1 @@ -5,6 +5,7 @@ Param( [string]$documentDbKey ) +. .\build\tfs\win32\node.ps1 . .\build\tfs\win32\lib.ps1 $Repo = "$(pwd)" diff --git a/build/tfs/win32/node.ps1 b/build/tfs/win32/node.ps1 new file mode 100644 index 00000000000..38afc1f39c6 --- /dev/null +++ b/build/tfs/win32/node.ps1 @@ -0,0 +1,6 @@ +# install node +$env:Path = $env:NVM_HOME + ";" + $env:NVM_SYMLINK + ";" + $env:Path +$NodeVersion = "7.10.0" +nvm install $NodeVersion +nvm use $NodeVersion +$env:Path = $env:NVM_HOME + "\v" + $NodeVersion + ";" + $env:Path \ No newline at end of file