- Add SSH public key to GitHub: Account settings > SSH Keys
- Clone this repository:
$ git clone git@github.com:KitaitiMakoto/teresa.git
or use SourceTree. - Move to repository directory in terminal:
$ cd path/to/teresa
to follow steps below.
- Install VirtualBox(or so): https://www.virtualbox.org/wiki/Downloads
- Install Vagrant: http://www.vagrantup.com/downloads.html
- Add Ubuntu box to Vagrant as "ubuntu1304":
$ vagrant box add ubuntu1304 http://goo.gl/ceHWg
- Start virtual machine:
$ vagrant up
Bringing machine 'ci' up with 'virtualbox' provider...
[ci] Clearing any previously set forwarded ports...
[ci] Clearing any previously set network interfaces...
[ci] Preparing network interfaces based on configuration...
[ci] Forwarding ports...
[ci] -- 22 => 2222 (adapter 1)
[ci] Booting VM...
[ci] Waiting for machine to boot. This may take a few minutes...
[ci] Machine booted and ready!
[ci] Setting hostname...
[ci] Configuring and enabling network interfaces...
[ci] Mounting shared folders...
[ci] -- /vagrant
[ci] VM already provisioned. Run `vagrant provision` or use `--provision` to force it
- Install knife solo:
$ gem install knife-solo
- Install Berkshelf:
$ gem install berkshelf
- Install Chef cookbooks:
$ berks install --path=cookbooks
- Prepare Chef Solo on virtual machine:
$ knife solo prepare 192.168.33.101
- Install middlewares into virtual machine(it may take several minites):
$ knife solo cook 192.168.33.101 nodes/ci.teresa.local.json
- You can see Jenkins control panel at http://192.168.33.101:8080
- Login to CI server:
$ vagrant ssh ci
- Move to shared directory:
[ci]$ cd /vagrant
- Install Node modules:
[ci]$ npm install
- Install Bower:
[ci]$ sudo npm install -g bower
- Install Bower components:
[ci]$ bower install
- Run test:
[ci]$ cd bower_components/phantomcss
[ci]$ ../../node_modules/.bin/casperjs test ./demo/testsuite.js
- Check result images on host machine's ./bower_components/phantomcss/screenshots directory
This application is distribuetd under the term of the MIT License. See MIT-LICENSE file for more info.