Anders Ingemann
210d3261c0
Check if current user is root. Fixes #20
2014-02-27 23:03:23 +01:00
Anders Ingemann
851389da09
Rely on $PATH to resolve commands. Fixes #12
2014-02-27 23:03:23 +01:00
Anders Ingemann
5cff8f9b1d
Use `type' to check if command available. Fixes #11
2014-02-27 23:03:23 +01:00
Anders Ingemann
739e22e929
Translate release names into codenames. Fixes #15
2014-02-27 23:03:23 +01:00
Anders Ingemann
7a4721bd70
Make 'packages' optional
2014-02-27 23:03:23 +01:00
Anders Ingemann
46dbe9e8c6
Move AKI info into JSON file. Fixes #13
...
Also introduced config_get() to retrieve a specific value from
these JSON files. Comments are now supported in those files as well
2014-02-27 23:02:58 +01:00
Anders Ingemann
6e145f6aca
Introduce format_command. Fixes #7
2014-02-27 23:02:58 +01:00
Anders Ingemann
f9ebd247e8
Create taskgraph out of all tasks before filtering.
...
Fixes #6
2014-02-27 23:02:57 +01:00
Adam Bolte
40d55ded4a
Allow manifest "sources" to be any valid file name.
2014-02-21 11:21:19 +11:00
James Brombegrer
6168717ba9
Permit Jessie as a release name.
2014-02-06 15:02:13 +00:00
Anders Ingemann
01208c61b5
Subtract gpt_offset from first real partition
...
... and not from grub_boot
2014-02-03 17:25:50 +01:00
Tomasz Rybak
f5eb071bec
Add minItems to ensure that we always have proper sources.list.
2014-01-25 17:08:35 +01:00
Tomasz Rybak
99ae9988ff
Add testing distribution and ability to use non-main sections.
2014-01-25 15:52:58 +01:00
Anders Ingemann
e20c7f9391
The grub partition for GPT only needs 1007KiB
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
3c39ac6734
Minor changes to GPT and grub support
2014-01-19 10:46:59 +01:00
Anders Ingemann
328b971289
GPT support for both extlinux and grub
2014-01-19 01:02:29 +01:00
Anders Ingemann
81a4ec78eb
Post-MBR size increased to 2.
...
Also, move the size addition into the volume model
2014-01-18 23:35:21 +01:00
Anders Ingemann
1e97600013
Label GPT partitions
2014-01-18 23:27:52 +01:00
Anders Ingemann
889812b1ad
Rename MBR partition table to MSDOS
...
Calling it MBR is just confusing
2014-01-18 23:27:52 +01:00
Anders Ingemann
8165297a02
Generalize link_dm_node() it works for all devices
...
Also accept some new parameters to adjust offsets and startsecotrs when creating the disk mapping
2014-01-18 16:36:41 +01:00
Tomasz Rybak
4b9d801734
Allow for building unstable release images.
2014-01-12 21:18:51 +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
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