Commit graph

118 commits

Author SHA1 Message Date
Anders Ingemann
d85ad7f598 Minimize size plugin can now shrink vmdk images
It requires vmware workstation to be installed (and zerofree optionally, but highly recommended)
2014-02-03 17:25:50 +01:00
Anders Ingemann
8902e5d93f Set the hostname on vagrant boxes 2014-02-03 17:25:50 +01:00
Anders Ingemann
81dab9c147 Set proper permissions on ~vagrant/.ssh 2014-02-03 17:25:50 +01:00
Anders Ingemann
9ee318e3d9 Check if vagrant box exists before bootstrapping 2014-01-19 13:21:35 +01:00
Anders Ingemann
a840dc28f3 MBR-gap, grub and GPT offset are now subtracted
automatically from the first available partition.
There is no need to fiddle with sizes while keeping the offsets in mind any longer.
Introduced Bytes() class which makes it a lot easier to handle size units.
2014-01-19 13:21:35 +01:00
Anders Ingemann
a433f1c299 Use volume.size instead of asking the partitionmap 2014-01-18 16:37:56 +01:00
Anders Ingemann
60a6fa0df2 Fix #132 2014-01-14 08:51:54 +01:00
Anders Ingemann
1d7f0bd105 image_commands now uses manifest_vars 2014-01-12 12:58:29 +01:00
Anders Ingemann
45521b2377 Merge remote and local package array in manifest
This allows us to specify the order of installation for packages
Fixes #127
2014-01-12 12:46:59 +01:00
Anders Ingemann
dcae0e156e Vagrant plugin creates its own user etc. now
There is no need to rely on other plugins any longer
2014-01-12 12:44:32 +01:00
Anders Ingemann
e340a96db3 New plugin: puppet
Install your own puppet configuration and run a manifest
2014-01-11 18:32:43 +01:00
Anders Ingemann
2cc4fbf452 prebootstrapped: don't reinstall GuestAdditions 2014-01-10 00:52:00 +01:00
Anders Ingemann
fcd7fabab8 Fix bug in vagrant plugin 2014-01-09 22:00:59 +01:00
Anders Ingemann
170e0d942d Simplify ONE Context installation 2014-01-09 22:00:09 +01:00
Anders Ingemann
d7f859b76f Remove unnecessary dependencies 2014-01-06 23:01:48 +01:00
Anders Ingemann
0092e1c2c2 Don't instantiate tasks
In practice they are just typed functions with attributes, having a reference to an object is just confusing.
So: Task.run() is now a classmethod
2014-01-06 22:58:21 +01:00
Anders Ingemann
e1881da2bc Simplify tasklist by passing a set to the modules 2014-01-06 22:58:21 +01:00
Anders Ingemann
a4ead02a9b Remove provider specific manifests
Manifest and module loading has been refactored
Provider modules now must implement validate_manifest like plugins do
Simplified loading of manifests
2014-01-05 14:03:04 +01:00
Anders Ingemann
27c0346455 Minor import stmt and dependency fix 2014-01-05 02:25:29 +01:00
Anders Ingemann
83e1339145 New plugin: minimize_size
It binds folders from the host machine to temporary and cache folders in the image.
This way dynamic volumes will not grow in size when running `apt-get update` etc.
2014-01-05 02:25:28 +01:00
Anders Ingemann
2b5664b0b2 Add `assets' variable to task __init__ files 2014-01-05 02:25:27 +01:00
Anders Ingemann
31f3a71464 New plugin: vagrant
Example manifest file also added
2014-01-05 02:25:26 +01:00
Anders Ingemann
15661ae680 Create snapshot of volume *after* package install 2014-01-05 02:25:26 +01:00
Anders Ingemann
569f6fd505 `quoted'' -> quoted' 2014-01-05 02:25:26 +01:00
Anders Ingemann
0612987fec New task: AddDefaultSources 2014-01-05 02:25:23 +01:00
Anders Ingemann
4ffb533625 Use new package handling in the cloud-init plugin
This saves quite a few "package" lines in the manifest
2014-01-05 02:24:29 +01:00
Anders Ingemann
1c93094833 Integrated package plugin with base system
New phase introduced "package installation" (fixes #114)
Apt source lines are now parsed, this allows to verify the target release of added packages.
All packages (except locales) are now installed *after* bootstrapping (fixes #123)
Added env argument to log_(check_)call
HostDependencies have been refactored a little
2013-12-29 20:58:06 +01:00
Anders Ingemann
1d69f65a7f Support for vmdk disk format 2013-12-29 16:50:22 +01:00
Anders Ingemann
61b5dd2ef0 run_id is now in hex per default
... since its primary use is as a string
2013-12-29 16:50:21 +01:00
Anders Ingemann
ba1db3b737 DisableRootLogin now runs after package install
Also adjusted the wording of the description
2013-12-29 16:50:21 +01:00
Anders Ingemann
1e0aa634d2 Make admin_user plugin more robust
Don't fail if the ec2-get-credentials script is not installed
Don't fail if SSH server is not installed
2013-12-29 16:50:21 +01:00
James Bromberger
39f5e815b8 Process cloud config tasks only if they are configured. 2013-12-25 12:47:17 +00:00
James Bromberger
7e3527d2af PIP8 ify the latest updates. 2013-12-21 12:26:37 +00:00
James Bromberger
e17bc7ec73 Adjust run ordering of cloud-init config. 2013-12-19 14:21:33 +00:00
James Bromberger
02ef8cabb8 Support auto-configure of cloud-init data sources, with manual override; support specifying modules to disable. 2013-12-19 11:44:34 +00:00
James Bromberger
682b747efc Permit cloud-init to be configured for its metadata sources using debconf. 2013-12-17 15:51:03 +00:00
Anders Ingemann
65e3f37520 Rename image_commands task module to "tasks" 2013-12-15 11:44:36 +01:00
Anders Ingemann
4cca325fb4 Merge remote-tracking branch 'osallou/update_image_commands_to_base' into python
Conflicts:
	plugins/image_commands/__init__.py
	plugins/image_commands/image_commands.py
2013-12-15 11:43:42 +01:00
Olivier Sallou
99b7834611 fix call of ImageCommands, object should not be called, only class should be
remove loopback_file reference, not existing anymore
  filesystem not available anymore, and depends on volume layout so remove the
  execute commands after the user_packages install, else user won't be able to
  call or update installed packages
2013-12-15 08:33:45 +01:00
Anders Ingemann
3ee0c314d6 Remove some required properties from schemas.
They are still required, but it's not really possible run the schemas without these properties being there
2013-12-14 23:18:42 +01:00
Anders Ingemann
3fef39d4d5 Fix EBS part of the prebootstrapped plugin 2013-12-14 23:18:42 +01:00
Anders Ingemann
d3dc44bc48 Rename tasks() to avoid clashes with modules
The functions are now called resolve_tasks() and resolve_rollback_tasks().
A little more verbose function names but also clearer.
2013-12-14 23:18:41 +01:00
Anders Ingemann
6b6ad527ce Reorder plugin init scripts
Let validate_manifest() always be the first function
2013-12-14 23:18:41 +01:00
Anders Ingemann
668b9896c1 Modularize init script installation
Don't install various init scripts when using cloud-init
2013-12-14 23:18:41 +01:00
Anders Ingemann
4acde32c5d build_metadata plugin only works with ec2 2013-12-14 23:18:41 +01:00
Anders Ingemann
9628a5015b Remove convert_image plugin
vdi is supported natively
2013-12-14 23:18:40 +01:00
Anders Ingemann
2320b2cb74 cloud-init plugin implemented.
There is no need for the sed plugin any longer
2013-12-14 23:18:40 +01:00
Anders Ingemann
80d1a7ffc0 Minor cleanup 2013-12-14 23:18:40 +01:00
Anders Ingemann
6138f88ab9 New plugin: "packages"
It combines features from the user_packages and backports plugin,
so they are not needed any longer.
2013-12-14 23:18:40 +01:00
Anders Ingemann
2af0968156 Implement partition mounts.
This solves quite a few challenges with mounting directories into root etc.
2013-12-14 23:18:39 +01:00