Anders Ingemann
8aefa93646
Remove map and unmap methods on singlepartitionmap
2013-10-27 18:11:53 +01:00
Anders Ingemann
d6502089e2
Implemented both MBR and GPT partitioning.
...
VirtualBox seems to not like GPT
2013-10-27 18:11:14 +01:00
Anders Ingemann
efecc15382
VDI images working now
...
*Helpful error messages included
2013-10-27 18:11:13 +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
9cb4b3e375
Rename mount_dir to workspace
...
We'll be using it for a bucnh of different things in the future
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
77c8b36151
Added pause-on-error switch for debugging
2013-10-27 18:10:44 +01:00
Anders Ingemann
b5c5acf5b1
PEP8-ify things.
2013-08-17 17:28:46 +02:00
Anders Ingemann
5864665b1f
Make mirror param in manifest optional
2013-08-17 16:04:20 +02:00
Anders Ingemann
9de86b9b8a
Remove "mount_dir" from base manifest schema.
2013-08-17 16:04:20 +02:00
Anders Ingemann
38715df6e9
Remove "device" from base manifest-schema
...
What is it? It's not used anywhere?
2013-08-17 16:04:20 +02:00
Olivier Sallou
398a4da313
make mirror mandatory in manifest
2013-08-13 10:43:29 +02:00
Olivier Sallou
afa9352d85
set mirror in bootstrapper instead of image
2013-08-13 09:52:03 +02:00
Anders Ingemann
7318240f59
Better error message on task order errors
2013-08-11 18:25:05 +02:00
Anders Ingemann
631901a827
Fix error when plugins key was not present
2013-08-11 18:05:54 +02:00
Olivier Sallou
cd6e10c6a1
Merge branch 'python' of https://github.com/andsens/build-debian-cloud into python
2013-07-31 08:03:08 +02:00
Anders Ingemann
59bae6e497
Create unique identifier in BootstrapInformation
...
Can be used to uniquely name temporary resources
2013-07-13 15:12:46 +02:00
Anders Ingemann
b3311a8ff6
Only add default tarball_dir if tarball is true
2013-07-13 15:12:45 +02:00
Olivier Sallou
17876070a5
add mirror attribute
2013-07-10 15:43:39 +02:00
root
ed76870ec9
fix raw image creation
2013-07-10 14:42:03 +02:00
Anders Ingemann
311db52f7b
Ensure minimum volume size of 1M
2013-07-09 21:31:10 +02:00
Anders Ingemann
be387673c0
Add log message to indicate a successful completion of all tasks
2013-07-08 23:14:08 +02:00
Anders Ingemann
1a21b4d90e
remove superfluous normpath()
2013-07-08 23:14:05 +02:00
Anders Ingemann
d3ab01f88f
Implement initialize() fn for providers and plugins ,silence boto debug
2013-07-08 23:14:04 +02:00
Anders Ingemann
6dfdc2ed6d
make tasklist.remove() behave like discard()
2013-07-08 23:14:03 +02:00
Anders Ingemann
b8341c48e4
allow removal of multiple tasks at once
2013-07-08 23:14:03 +02:00
Anders Ingemann
a471c7ef71
Refactor manifest to allow plugin manifest validation
2013-07-08 23:14:03 +02:00
Anders Ingemann
1b512e08fc
Make plugin loading a little prettier
2013-07-08 23:14:02 +02:00
Anders Ingemann
3bf64a6e80
catch keyboard interrupt
2013-07-08 23:14:02 +02:00
Anders Ingemann
7789bc6b16
Relative timestamp in logfile
2013-07-08 23:14:02 +02:00
Anders Ingemann
b92f70e548
bootstrap task implemented
2013-07-08 23:14:01 +02:00
Anders Ingemann
4d86ae5bea
Implement MountVolume task, catch less exceptions
2013-07-08 23:14:01 +02:00
Anders Ingemann
5418ac87ca
Move bootstrapdir requirement to main json schema
2013-07-08 23:14:01 +02:00
Anders Ingemann
29394270c6
Remove tasks not in tasklist from dependency graph
...
Use filter() for filtering instead of list comprehensions
2013-07-08 23:14:01 +02:00
Anders Ingemann
237dde9285
Remove task.run() it is hiding missing run functions
2013-07-08 23:14:01 +02:00
Anders Ingemann
442397fb2e
Way better rollback architecture through improvements in flexibility
2013-07-08 23:14:00 +02:00
Anders Ingemann
2135cdbc1a
PEP8 fixes
2013-07-08 23:14:00 +02:00
Anders Ingemann
96028f96e1
Various improvements and additions.
...
I couldn't be bothered to untangle this, so here it goes:
* Log colors depending on loglevel
* Simplified Filelogger
* Remove description=None from basetask
* create_list creates task list from argument now
* Task rollback feature: If a task fails, the tasklist calls rollback() on the completed tasks in reverse order
* Added TaskException to common.exceptions as a base to extend from
* Added TriggerRollback task to common.tasks for development purposes
* An EBS volume for bootstrapping is now created and attached to the instance (including rollback actions)
* EC2 Connect task now depends on host.GetInfo
2013-07-08 23:14:00 +02:00
Anders Ingemann
1240294784
Validate volume size is an integer
2013-07-08 23:14:00 +02:00
Anders Ingemann
79a699a360
Better schema validation and errors
2013-07-08 23:13:59 +02:00
Anders Ingemann
b701bd028b
refactor logging setup
2013-07-08 23:13:59 +02:00
Anders Ingemann
88ebeadd25
fix phases and their ordering
2013-07-08 23:13:59 +02:00
Anders Ingemann
2f9fa4e6f7
Allow comments in manifest files
2013-07-08 23:13:59 +02:00
Anders Ingemann
a401f9edc0
Order by phases as well
2013-07-08 23:13:59 +02:00
Anders Ingemann
0f29b3d0e2
Cycle detection and topological sorting
2013-07-08 23:13:59 +02:00
Anders Ingemann
1e4af40b3c
Task dependencies, bogus implementation
2013-07-08 23:13:59 +02:00
Anders Ingemann
5689b77011
Manifest validation, simplified main run fn
2013-07-08 23:13:58 +02:00
Anders Ingemann
a8364fe04d
logging
2013-07-08 23:13:58 +02:00
Anders Ingemann
d18fa6dd6b
Use prettier format syntax
2013-07-08 23:13:58 +02:00
Anders Ingemann
867fc9b276
Move taskname printout
2013-07-08 23:13:58 +02:00