Setting up Continuous Integration on Windows
Installing Jenkins
Download Windows Installer from https://wiki.jenkins-ci.org/
The installer configures Jenkins to run as a service using SYSTEM user which can be dangerous, it’s safer to change the user’s service to a non priviledged one:
http://antagonisticpleiotropy.blogspot.fr/2012/08/running-jenkins-in-windows-with-regular.html
Configuring Jenkins
Installing JDK 8
Through Jenkins administration, add a JDK 8 automatic installer.
Installing Maven 3.2.2
Through Jenkins administration, add a Maven automatic installer from Apache’s site.
Installing PhantomJS
Install binaries from http://phantomjs.org/download.html
CHeck that the executable is included in PATH:
phantomjs --version
1.9.8
Installing NodeJS
Jenkins NodeJS plugin does not work on Windows, so we’ll do a manual installation.
Download latest stable version (e.g. 0.10.35) from http://nodejs.org/
Don’t install to default directory C:\Program Files\nodejs
as it requires administration rights, prefer a simpler path like c:\nodejs
.
http://blog.majgis.com/npm-nodejs-fails-when-run-from-jenkins-on-windows/
Edit C:\nodejs\node_modules\npm\npmrc
to replace
prefix=${APPDATA}\npm
by
prefix=C:\nodejs\node_modules\npm
Add the ‘C:\nodejs\node_modules\npm’ folder to the PATH environment variable, remove the one that was added by the installer: ‘C:\Users<user>\AppData\Roaming\npm’
npm may require git, install it from http://msysgit.github.io/
Add bower and grunt:
npm install -g bower grunt-cli
bower --version
grunt --version
It can be useful to have multiple versions of NodeJS on same machine but ‘nvm’ equivalents on Windows focus more on development environment than continuous integration. So if a job requires another version of NodeJS, change its PATH.