Commit graph

38 commits

Author SHA1 Message Date
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
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
2cc4fbf452 prebootstrapped: don't reinstall GuestAdditions 2014-01-10 00:52:00 +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
15661ae680 Create snapshot of volume *after* package install 2014-01-05 02:25:26 +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
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
2af0968156 Implement partition mounts.
This solves quite a few challenges with mounting directories into root etc.
2013-12-14 23:18:39 +01:00
Anders Ingemann
6df7469614 Restrict supported volume backings in prebootstrap 2013-11-22 09:03:48 +01:00
Anders Ingemann
663b868b41 Fix #107. Rename before and after task properties
`before' becomes `successors' and `after' becomes `predecessors'
2013-11-22 09:03:47 +01:00
Anders Ingemann
ceae489210 Use remount() to create a clean snapshot 2013-10-27 18:11:58 +01:00
Anders Ingemann
b025f6ed35 Refactor remount() into common function 2013-10-27 18:11:57 +01:00
Anders Ingemann
f075d1f2b9 Remove ambiguous tasklist function replace() 2013-10-27 18:11:57 +01:00
Anders Ingemann
38bcb12c72 SetBootMountDir task in prebootstrapped plugin 2013-10-27 18:11:57 +01:00
Anders Ingemann
1bf61770d9 Access fsm states directly 2013-10-27 18:11:56 +01:00
Anders Ingemann
387aa62750 Remove FSM from NoPartitions p-map
Don't set the volume device_path by calling 'create'
2013-10-27 18:11:55 +01:00
Anders Ingemann
8891a18e4b Remove mount_specials from FSM
It makes modelling the different states more complicated
2013-10-27 18:11:54 +01:00
Anders Ingemann
738ba47c65 Add references instead of instances to the tasklist 2013-10-27 18:11:53 +01:00
Anders Ingemann
a9c465cf8c Minor fixes to paths 2013-10-27 18:11:14 +01:00
Anders Ingemann
0eb5eecfc2 Place everything in info.workspace
instead of spreading files all around the disk
2013-10-27 18:11:13 +01:00
Anders Ingemann
ff7c04c120 Support for partitions
MAJOR refactor. The volume is now abstracted into a model along with a partitionmap and partitions.
Volumes and partitions are now controlled via an FSM to ensure that commands are called in the proper sequence.
GRUB can now be installed properly onto loop devices by using dmsetup to fake a proper harddisk.
2013-10-27 18:11:12 +01:00
Anders Ingemann
b5c5acf5b1 PEP8-ify things. 2013-08-17 17:28:46 +02:00
Anders Ingemann
f0838cc77d Prebootstrapped plugin now supports parted 2013-08-11 19:42:48 +02:00
Anders Ingemann
901d0845bf Bootstrapping of instance store AMIs implemented 2013-07-15 00:01:07 +02:00
Anders Ingemann
9f85cdf909 Remove 'Volume' part from ebs tasks.
It's kind of obvious that we are working with volumes in the ebs module.
2013-07-13 15:12:45 +02:00
Anders Ingemann
55741b822f Prebootstrapped plugin now autocreates a snapshot
of the bootstrapped plugin, if no snapshot ID is provided.
2013-07-09 20:45:57 +02:00
Anders Ingemann
4e2503ad9c Put task class properties in identical order 2013-07-09 20:32:50 +02:00
Anders Ingemann
25a017fa35 Validate manifest in plugin, fix rollback error 2013-07-08 23:14:03 +02:00
Anders Ingemann
0c1677eef2 Rollback task for prebootstrapped plugin 2013-07-08 23:14:03 +02:00
Anders Ingemann
8479ff4dca Implemented prebootstrapped plugin 2013-07-08 23:14:03 +02:00
Anders Ingemann
3cf6a20ba4 Unfinished new plugin to speed up bootstrapping process when developing 2013-07-08 23:14:03 +02:00