Anders Ingemann
f632e5efce
Verify lines in packages.sources
2014-01-09 17:24:47 +01:00
Anders Ingemann
ebd8f71fdb
Fix bug in packages stanza ( fixes #126 )
...
Created 3 new tasks:
AddManifestSources
AddRemoteManifestPackages
AddLocalManifestPackages
They are added independently depending on what is specified in the manifest.
2014-01-09 17:21:29 +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
039a35a344
Fix bug in ManifestError __str__ function
...
+ some formatting fixes
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
8b5bc77650
Fallback values in a prettier way
2014-01-05 02:25:29 +01:00
Anders Ingemann
44f3296426
Extlinux support
...
The bootloader is now specified in the manifest
2014-01-05 02:25:28 +01:00
Anders Ingemann
98d4a074b1
Reorganize imports a little
2014-01-05 02:25:28 +01:00
Anders Ingemann
7afd04f1c9
Distinguish between bootstrap and apt mirror
...
They can both be set independently now.
If the bootstrap mirror is not set, it falls back to the apt mirror,
which in turn falls back to the geo redirector.
2014-01-05 02:25:27 +01:00
Anders Ingemann
d9a7f3d1e4
Make plugins key a required manifest property
2014-01-05 02:25:26 +01:00
Anders Ingemann
50f45d31d4
Refactor manifest_vars use in package handling
2013-12-29 20:58:06 +01:00
Anders Ingemann
8d32339fda
Introduced a global manifest_vars dictionary
...
All manifest entries can now be accessed from the manifest itself
2013-12-29 20:58:06 +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
51041f6aa2
Generalize VirtualBoxVolume, introduce QEMUVolume
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
293557827f
Fix PEP8 style fixes
2013-12-14 23:18:43 +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
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
637f49904a
Move swap partition before root
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
Anders Ingemann
970cbfccf2
Fix bug when fetching fsm state
2013-12-14 23:18:39 +01:00
Anders Ingemann
71be571f93
Fix #104 . Remove "enabled" from plugin manifests
2013-11-22 09:03:47 +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
71adb3d04e
Manifest schema now validates partition definition
...
S3 partitioning is disallowed for now
2013-10-29 22:41:29 +01:00
Anders Ingemann
cf3c861a27
Added the dry-run option
2013-10-27 18:37:43 +01:00
Anders Ingemann
6c800145dc
Alias s3 backing to raw
2013-10-27 18:11:59 +01:00
Anders Ingemann
0fdcc2e27b
Fix bug when no boot partition is specified
2013-10-27 18:11:58 +01:00
Anders Ingemann
e1ab4dc1ae
EC2 provider can now bootstrap EBS volumes again
...
Use tasksets in EC2 provider
2013-10-27 18:11:58 +01:00
Anders Ingemann
754e414742
Document post-mbr gap and make it MBR-only
2013-10-27 18:11:58 +01:00
Anders Ingemann
f075d1f2b9
Remove ambiguous tasklist function replace()
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
fb0fa1e94e
Unmap partitions
2013-10-27 18:11:55 +01:00
Anders Ingemann
6ddd8809a3
Partitioning fixes
2013-10-27 18:11:55 +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
3c32310346
Remove mountpoints from partitions
2013-10-27 18:11:54 +01:00
Anders Ingemann
ecdc255752
Simplify FSM framework. Only model relevant states
2013-10-27 18:11:53 +01:00
Anders Ingemann
738ba47c65
Add references instead of instances to the tasklist
2013-10-27 18:11:53 +01:00
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