Commit graph

76 commits

Author SHA1 Message Date
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
27c0346455 Minor import stmt and dependency fix 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
2b5664b0b2 Add `assets' variable to task __init__ files 2014-01-05 02:25:27 +01:00
Anders Ingemann
9a525628a2 Print some more helpful messages on apt failure 2014-01-05 02:25:27 +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
569f6fd505 `quoted'' -> quoted' 2014-01-05 02:25:26 +01:00
Anders Ingemann
a50db30185 Don't install recommended packages 2014-01-05 02:25:26 +01:00
Anders Ingemann
e388078de7 Make InstallRemotePkgs task a little more helpful 2014-01-05 02:25:25 +01:00
Anders Ingemann
0612987fec New task: AddDefaultSources 2014-01-05 02:25:23 +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
91cff897c8 MoveImage task now uses image.name from manifest 2013-12-29 16:50:21 +01:00
Anders Ingemann
abe6a5fef3 Don't save the logger to a var we only use once 2013-12-29 16:50:21 +01:00
Anders Ingemann
c0021e0c46 Merge pull request #121 from osallou/cleanup_dirs
if tmp contains directories, cleanup task fails. Add management for directories too
2013-12-15 02:34:24 -08:00
Olivier Sallou
14b60bd364 if tmp contains directories, cleanup task fails. Add maanagement for directories 2013-12-15 08:31:15 +01:00
Anders Ingemann
293557827f Fix PEP8 style fixes 2013-12-14 23:18:43 +01:00
Anders Ingemann
b03fbb6dad Don't resolve device_path
grub does that automatically
2013-12-14 23:18:42 +01:00
Anders Ingemann
0a49901476 Implement hvm support for ec2 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
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
Anders Ingemann
2e29ac0f93 Rename expand-volume script to expand-root
Also move task for adjustment of that script into common.
It still needs some modifications to support device names other than xvda
2013-11-22 09:03:48 +01:00
Anders Ingemann
a1d465ea16 Fix DisableGetTTYs task to disable tty6 as well 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
1db38ec7dd New task for adjusting the expand-volume script
By default it only expands /dev/xvda
2013-10-27 18:11:59 +01:00
Anders Ingemann
a397091e46 Generalize req. host package additions 2013-10-27 18:11:59 +01:00
Anders Ingemann
1b5a1e0579 Fix missing package check
`dpkg-query -W parted` exits with 0 even if it is not installed
2013-10-27 18:11:58 +01:00
Anders Ingemann
a07e02cfcc Add required packages in the right places 2013-10-27 18:11:58 +01:00
Anders Ingemann
854ab4f202 Make fstab more generic 2013-10-27 18:11:57 +01:00
Anders Ingemann
a3006fbe47 Fix humongous brainfart 2013-10-27 18:11:56 +01:00
Anders Ingemann
d4601f08af Only install gen-hostkeys when sshd is installed 2013-10-27 18:11:56 +01:00
Anders Ingemann
3dab414561 Final newline in fstab 2013-10-27 18:11:56 +01:00
Anders Ingemann
6ddd8809a3 Partitioning fixes 2013-10-27 18:11:55 +01:00
Anders Ingemann
3993ff23a5 Less verbose checking of installed packages 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
885ace7b48 Updates to networking in vbox 2013-10-27 18:11:53 +01:00
Anders Ingemann
5dcec10d65 Minimize required image packages 2013-10-27 18:11:52 +01:00
Anders Ingemann
53991bdad7 Rename loopback image to volume 2013-10-27 18:11:52 +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
a9c465cf8c Minor fixes to paths 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
b5c5acf5b1 PEP8-ify things. 2013-08-17 17:28:46 +02:00
Anders Ingemann
e1fc5ea972 Use long options wherever possible.
This makes the code a lot easier to understand
2013-08-17 15:00:53 +00:00
Anders Ingemann
e4e6035eb2 Attach image to loopdevice in one command 2013-08-17 16:38:43 +02:00
Anders Ingemann
5864665b1f Make mirror param in manifest optional 2013-08-17 16:04:20 +02:00