316 Commits

Author SHA1 Message Date
Ian Southam
cc5d72133e Removed chef as we will definitely not go this way 2015-03-16 11:35:14 +01:00
Ian Southam
c7c1f3202e Plan B
Replace chef with a python script
configure.py will read the bags and (hopefully) create the desired state
At this stage this is ipassociation
This code should work for both VR and VPCrs

TODO:
iptables
ip route throw (present in VR but not in VPCr
Determine default route
Unit tests
2015-03-16 11:35:08 +01:00
Leo Simons
66b5260c90 Documentation and license headers for new systemvm testing tools. 2015-03-16 11:35:08 +01:00
Leo Simons
04ad01a064 Commit missing .kitchen.yml 2015-03-16 11:35:07 +01:00
Ian Southam
ab64c7df6f Added curl to the base install 2015-03-16 11:35:00 +01:00
Ian Southam
5b82e2059d Cherry-pick of 11c00977f77f45aa7b0c387dc88360eba0819e8a:
----
Author:    Ian Southam <isoutham@schubergphilis.com>

First commit towards moving systemvm to chef based configuration
In this commit

1.  cmdline json databag is created
2.  ip association data bag is created
3.  Basic chef cookbook to manage ips and routes

Conflicts:
	systemvm/patches/debian/config/etc/init.d/cloud-early-config
	systemvm/patches/debian/config/var/chef/cookbooks/README
	tools/appliance/definitions/systemvm64template/postinstall.sh
----
Because we've refactored the systemvm template the change to
postinstall.sh now gets its own chef.sh file.
2015-03-16 11:34:59 +01:00
Hugo Trippaers
4fd616fc0f Make sure the location for the persistant configs exists 2015-03-16 11:34:58 +01:00
Leo Simons
f7dd35e1ee CLOUDSTACK-7143: a better fix for kernel upgrade disk space problems
Increase / and /boot a little bit, to the point that there is enough
space on them to do a kernel upgrade. With this I think we can
decrease total disk space usage back down to 2.5GB.

Docs for the preseed config found at
  http://anonscm.debian.org/gitweb/?p=d-i/debian-installer.git;a=blob_plain;f=doc/devel/partman-auto-recipe.txt;hb=HEAD
2015-03-16 11:34:58 +01:00
Funs
c27c69438b hypervisors: add OVM3 plugin that supports OVM 3.2.1/3.3.x
This is a plugin that puts in ovm3 support ranging from 3.3.1 to 3.3.2. Basic
functionality is in here, advanced networking etc..

Snapshots only work when a VM is stopped now due to the semantics of OVM's raw
image implementation (so snapshots should work on a storage level underneath the
hypervisor shrug)

This closes #113

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-12 11:33:42 +05:30
Rohit Yadav
5fb5937cdb appliance: do a apt-get clean before upgrade to free up space
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-02-06 17:02:44 +05:30
Rohit Yadav
b9ae18c5fb appliance: except for openswan upgrade rest of the packages
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-01-28 23:26:47 +05:30
Rohit Yadav
6b6ce5d074 appliance: don't fail is bak is not found
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-01-28 18:27:19 +05:30
Rohit Yadav
3fddfe0e10 appliance: fix Debian ISO urls, fixes jenkins build
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-01-15 15:35:13 +05:30
Wei Zhou
ca5c800f8d Fix CloudStack version (4.6.0) in systemvm template 2014-12-08 15:26:56 +01:00
Will Stevens
03daae571b CLOUDSTACK-7959: fixed 'qemu-img convert' compat issue 2014-12-02 12:15:16 -05:00
Will Stevens
8e689b1148 Updated the system vm build to remove incompatible qemu-img 'compat' option 2014-11-21 05:59:06 -05:00
Edison Su
05bec59c14 CS-27148 system vm image build process, needs to build an old version of qemu image, otherwise, it won't work on RHEL 6 Reviewed-by:Frank 2014-11-06 15:25:57 -08:00
Rohit Yadav
ce51fe32f9 CVE­2014­3566: Avoid using SSLv3 on apache2 webserver used by SSVM
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-11-04 14:46:22 +05:30
Harikrishna Patnala
34b7288ca4 CLOUDSTACK-7748: Cloudstack version number is missing in system vm template. /etc/cloudstack-release in system vm does not have version number which leads in vm deployment failure while checking router version. 2014-11-03 12:13:04 +05:30
Harikrishna Patnala
6c04d867b0 CLOUDSTACK-7660: Enhance system vm template to support baremetal
Installed flask package and removed the disk expert recipe in
system vm template to keep only one partition

Signed-off-by:  Frank Zhang <frank.zhang@citrix.com>
2014-10-31 19:35:09 +05:30
SrikanteswaraRao Talluri
93529e47fd CLOUDSTACK-7824: using debian 7.7.0 and
added 'sharutils' package installation in system template

Signed-off-by: SrikanteswaraRao Talluri <talluri@apache.org>
2014-10-31 18:52:17 +05:30
Rohit Yadav
49de3ab037 appliance: add license headers to new vbox cleaner rb scripts
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-09-23 02:34:14 +02:00
Rohit Yadav
cb5597167d appliance: build and export raw systemvm image for OVM
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2014-09-22 21:58:25 +02:00
Leo Simons
ba009ed51a CLOUDSTACK-7143: attempt to be safer when cleaning up 2014-09-22 21:38:17 +02:00
Leo Simons
e43e083893 CLOUDSTACK-7143: protect against old ruby 2014-09-22 21:38:17 +02:00
Leo Simons
64f4fb1af8 CLOUDSTACK-7143: note shar dependency 2014-09-22 21:38:17 +02:00
Leo Simons
362946c52e CLOUDSTACK-7143: don't call rvm from build
It is simpler to expect that rvm setup is done outside of this build.
The buildacloud.org jenkins has rvm installed/enabled by default so
does not invoke rvm.
2014-09-22 21:38:17 +02:00
Leo Simons
a8500ed73e CLOUDSTACK-7143: survive / in branch names 2014-09-22 21:38:17 +02:00
Leo Simons
115b2cf8e7 CLOUDSTACK-7143: only archive the zipped hyperv image
Cherry-pick of d09acc44f2b36cd593ebe97ab1673b7757ea2c25.
2014-09-22 21:38:17 +02:00
Leo Simons
d56e950e85 CLOUDSTACK-7143: work on vagrant box export
Running --export creates the .ovf and the .vmdk files referenced
from that .ovf in one go. Guessing/predicting the names of the .vmdk
files is not fool-proof.
2014-09-22 21:38:17 +02:00
Ian Southam
cab4dd8258 CLOUDSTACK-7143: Fixed box file for virtualbox 2014-09-22 21:38:16 +02:00
Leo Simons
598c472b73 CLOUDSTACK-7143: remove erroneous backticks
The backticks in the Vagrantfile template were getting evaluated by bash.
This caused some harmless but confusing error messages to appear on running
the build. Easy fix is to remove them.
2014-09-22 21:38:16 +02:00
Leo Simons
35347f8350 CLOUDSTACK-7143: try to fix jenkins problems with last 2 commits
* bundle install needs to run before running the vbox cleaning scripts,
  so move prepare step before clean step
* feature branches have / in their name which is a bad character to
  put into filenames
2014-09-22 21:38:16 +02:00
Leo Simons
00b39de0f8 CLOUDSTACK-7143: more reliable support for vagrant box export
Veewee supports exporting vagrant boxes out of virtualbox, out of the box.
However, it assumes that it can export a disk if the shutdown of the vm that
is using that disk has succeeded. This assumption is not strictly always true
(see previous commit). So, we replicate the bit of logic in veewee for making
vagrant boxes.

This has the added side benefit of creating an .ovf export only once, rather
than once for vmware and then again for vagrant.
2014-09-22 21:38:16 +02:00
Leo Simons
be8b2d7c21 CLOUDSTACK-7143: more robust box cleanup
Having experimented with many edge cases of running multiple build.sh
commands in parallel / against busy virtualbox setups, the only really
reliable way to produce consistent images is to not do these commands
in parallel and to not do them while the machine is doing many other
things.

If virtualbox or the machine that hosts it is very busy, and/or it has
a lot of disks it knows/knew about, and/or its tuesday, behavior may
be a bit different.

Realizing this reality, this commit adds some scripts that try really
hard to set virtualbox back to known/healthy state before building.
2014-09-22 21:38:16 +02:00
Leo Simons
d658fc4637 CLOUDSTACK-7143: attempt to export a vagrant box 2014-09-22 21:38:16 +02:00
Leo Simons
1821f4ec06 CLOUDSTACK-7143: fix a missing apt-get update
In 8e2d06153b3d5ec1540fac1c8fbc97b5d2b58a8e I mistakenly/accidentally
a apt-get update.

As
    https://wiki.debian.org/Multiarch/HOWTO
explains, apt-get update is needed after adding a new architecture.
2014-09-22 21:38:15 +02:00
Leo Simons
91ffedb39c CLOUDSTACK-7143: a better fix for kernel upgrade disk space problems
Increase / and /boot a little bit, to the point that there is enough
space on them to do a kernel upgrade. With this I think we can
decrease total disk space usage back down to 2.5GB.

Docs for the preseed config found at
  http://anonscm.debian.org/gitweb/?p=d-i/debian-installer.git;a=blob_plain;f=doc/devel/partman-auto-recipe.txt;hb=HEAD
2014-09-22 21:38:15 +02:00
Leo Simons
d5a4a2521b CLOUDSTACK-7143: fix do_signature to account for change to install_cloud_scripts
The do_signature script required a lingering cloud-scripts.tar that was no longer
there after the git export tarball fiddling magic was gone.
2014-09-22 21:38:15 +02:00
Leo Simons
25bb682cd1 CLOUDSTACK-7143: fix the fix for rvm/ruby/bundler setup on jenkins
The recommended use of --deployment goes along with the requirement to
check Gemfile.lock into source control, which I don't want to do.
2014-09-22 21:38:15 +02:00
Leo Simons
0570d37106 CLOUDSTACK-7143: initial apt-upgrade still running out of space (upgrading the kernel)
I wonder if this is due to the 7.4.0->7.6.0 needing more space. Should see if
there's more stuff that can be cleaned earlier?
2014-09-22 21:38:15 +02:00
Leo Simons
b4fceef407 CLOUDSTACK-7143: sometimes the consolidated 'apt' command runs out of space 2014-09-22 21:38:15 +02:00
Leo Simons
41ddb6b768 CLOUDSTACK-7143: make script compatible with linux mktemp 2014-09-22 21:38:15 +02:00
Leo Simons
631a3c8722 CLOUDSTACK-7143: install openssl early enough to allow generating passwords 2014-09-22 21:38:14 +02:00
Leo Simons
a56392b5e4 CLOUDSTACK-7143: attempt at a reliable way to set up rvm/bundler on jenkins 2014-09-22 21:38:14 +02:00
Leo Simons
a7d07bf3df CLOUDSTACK-7143: fix a bug where a script file rename wasn't propagated to build.sh 2014-09-22 21:38:14 +02:00
Leo Simons
634560e381 CLOUDSTACK-7143: fix a bug in the debianbase template that was referencing deleted scripts 2014-09-22 21:38:14 +02:00
Leo Simons
dd34d10159 CLOUDSTACK-7143: add tests for the appliance build
Create a new minimal 'debianbase' definition which is a veewee template
that's a lot like the systemvmtemplate, but does not have any
systemvm-ness in it. Use it to create a new test.sh which tests a few
common invocations of build.sh work as desired.

This is mainly useful for debugging whether the appliance build process
is working / consistent; in order to test a systemvm itself it should
really first be merged with systemvm.iso.
2014-09-22 21:38:14 +02:00
Leo Simons
33fd6894a0 CLOUDSTACK-7143: use shar to inject cloud-scripts from working copy
The current build downloads its script from master by fetching a cloudstack
tarball. Besides being an unneeded load on the apache git server, this is a
problem when working on a branch and wanting to inject a different set of
scripts. It also makes it pretty likely that the injected copy of the script
will not match what a production release wants, so there is very little
chance of not needing to overwrite the scripts.

Ideally we would just rsync over some files. However, veewee does not provide
an option to do that. In order to keep a 'cleanly veewee-only' build possible,
and work with any recent veewee version, in this change we restor to using
shar (http://en.wikipedia.org/wiki/Shar) to produce an archive which can
execute as a script, which we feed to veewee to execute.
2014-09-22 21:38:14 +02:00
Leo Simons
35ba68444b CLOUDSTACK-7143: add the ability to inject a custom SSH key
When working on the systemvm in isolation, or using vagrant or similar tools,
it can be useful to inject a custom SSH key before merging a management server
systemvm.iso into it. This option allows that. It should _not_ have effect
on management-server-managed vms which always get their SSH keys injected.
2014-09-22 21:38:13 +02:00