Continuous Delivery Workshop Preparations
Overview
These instructions will guide you through an example project for the ‘Continuous Delivery’ workshop.
You will deploy the website through several stages:
dev -> ci -> qa -> prod
Requirements
To start the workshop right away we ask you to bring a laptop and prepare it as follows:
- Install VirtualBox: https://www.virtualbox.org/wiki/Downloads
- Install Vagrant http://www.vagrantup.com/downloads.html
- Ensure that you have at least 2.5GB of free space on your hard disk
- Ensure that your USB port is working so that we can provide the image via a portable Hard Drive/Stick.
- Make sure you don’t use local ports like
8181
and8153
. We need these ports for accessing the apps on the VirtualMachine
File structure of the example project
. ├── README.md General instructions ├── Vagrantfile Config for starting the VM ├── app Example app for the workshop └── vendor External files from vendors ├── Vagrant-1.4.3.dmg ├── Vagrant_1.4.3.msi ├── vagrant_1.4.3_i686.deb ├── vagrant_1.4.3_i686.rpm ├── vagrant_1.4.3_x86_64.deb ├── vagrant_1.4.3_x86_64.rpm ├── VirtualBox-4.3.2-90405-Win.exe ├── VirtualBox-4.3.2-90405-OSX.dmg └── ubuntu-12.04.2-amd64.box
How to use the example project
- Insert USB Stick
- Copy folder
cd_workshop
to local disk - Eject the USB stick and pass it to the next student
- Install VirtualBox and Vagrant from
vendor
(if not installed already) - Open the terminal and go to the folder on your local disk
- Run
vagrant up
on the terminal
Now the virtual machine starts up and consumes the local ports. It fetches the.box
file from./vendor
to create the VM - Open http://localhost:8153/ in your browser to see the CI-Server working
- Open http://localhost:8181/ to see the umbrella page for our web project we will working on
http://localhost:8181/workshop-dev - Current status in `app` http://localhost:8181/workshop-ci - Stage after build http://localhost:8181/workshop-qa - Stage after tests http://localhost:8181/workshop-prod - Production
- SSH into the machine with
vagrant ssh
.
You should be able to run every command that is needed for the workshop as uservagrant
.
You can usesudo
without a password. - In case you need the username and password:
Username: vagrant Password: vagrant
- Go to the folder
/vagrant/app
, make changes and push them
cd /vagrant/app git add . git commit -m "Update content" git push origin master
- See the CI-Server in action while fetching the changes and running the tests: http://localhost:8153/view/CD-Pipeline/
- Improve the application and push the updates, when you are satisfied with your results.
You can edit the code directly on the host in your favourite editor / IDE. - Approve the changes by starting the deployment to the next stage
FAQ
F: Do I really need VirtualBox or may I use VMWare Workstation as well?
A: We are using VirtualBox for our workshop. VMWare Workstation is currently not supported.