Commit graph

132 commits

Author SHA1 Message Date
Anders Ingemann
f62c8ade99 Convert indentation from tabs to spaces (4)
Up until now I didn't see the point of using spaces for indentation.
However, the previous commit (a18bec3) was quite eye opening.
Given that python is an indentation aware language, the amount of
mistakes that went unnoticed because tabs and spaces were used
at the same time (tabs for indentation and spaces for alignment)
were unacceptable.

E101,W191 have been re-enable in the tox flake8 checker and
the documentation has been modified accordingly.

The following files have been left as-is:
* bootstrapvz/common/assets/extlinux/extlinux.conf
* bootstrapvz/common/assets/init.d/expand-root
* bootstrapvz/common/assets/init.d/generate-ssh-hostkeys
* bootstrapvz/common/assets/init.d/squeeze/generate-ssh-hostkeys
* bootstrapvz/plugins/docker_daemon/assets/init.d/docker
* bootstrapvz/providers/ec2/assets/bin/growpart
* bootstrapvz/providers/ec2/assets/grub.d/40_custom
* bootstrapvz/providers/ec2/assets/init.d/ec2-get-credentials
* bootstrapvz/providers/ec2/assets/init.d/ec2-run-user-data
* docs/_static/taskoverview.coffee
* docs/_static/taskoverview.less
* tests/unit/subprocess.sh
2016-06-04 11:38:16 +02:00
The Fox in the Shell
aecb89aab5 Indent with 4 spaces 2016-03-15 18:01:41 +01:00
The Fox in the Shell
4cc9ec0d1b Add the 'apt.conf.d' manifest subsection 2016-03-15 18:01:41 +01:00
The Fox in the Shell
2b6dc47b90 manifest-schema.yml: Fixup uses of minItems in objects 2016-03-15 17:52:12 +01:00
Anders Ingemann
218275a3b5 Also serialize metaschema in Manifest class
The remote bootstrapping process was broken, since
the metaschema was not loaded on the remote side.
2016-03-13 17:46:30 +01:00
Nicolas Braud-Santoni
bcd1c7b536 manifest: Load the metaschema only once 2016-03-01 21:26:46 +01:00
Nicolas Braud-Santoni
324a2fb7d4 manifest: Validate schemata before use
This is probably suboptimal, as the metaschema is reloaded every time.
2016-02-29 21:22:24 +01:00
Nicolas Braud-Santoni
7c5e5d111d manifest-schema: Relax requirements for plugins
This lets plugins define arbitrary datatypes for their configuration,
  not only objects.

Also, `additionalProperties` was not specified, so entries with
  arbitrary names could be added.  This isn't the case anymore.
2016-02-22 15:16:45 +01:00
Clark Laughlin
46594b1ef0 enable support for creating kvm images for jessie on arm64 2016-01-08 13:06:57 -06:00
Anders Ingemann
7393d7cfb5 Only allow the minbase variant 2015-12-13 19:41:18 +01:00
Anders Ingemann
c880a6849a Remove image section in manifest
All provider specific settings have been moved to the
provider section. The image name itself is now located
at the top level and called "name". It is required for all providers.
2015-12-13 19:41:18 +01:00
Anders Ingemann
42d12d440d Add bootstrap_script property to BootstrapInfo
This allows plugins to manipulate the debootstrap process
2015-12-13 19:41:16 +01:00
Anders Ingemann
4a509aba76 First stab at docker provider
Huh... That was easy.
2015-12-13 19:41:16 +01:00
Anders Ingemann
f572703ecc Bootstrap azure images directly to VHD 2015-10-14 22:40:15 +02:00
Tiago Ilieve
f5de2fbc0d Changes default Debian mirror
Although it isn't yet deprecated by the wiki[1], the Debian mirrors HTTP
redirector names itself as `httpredir.debian.org`, even when accessed at
`http.debian.net`.

[1]: https://wiki.debian.org/DebianGeoMirror
2015-08-07 18:16:14 -03:00
Alex Adriaanse
545a337a81 Add support for Btrfs 2015-06-30 01:37:09 +00:00
Anders Ingemann
e556366c19 Fix #98. External plugin architecture implemented 2015-05-03 13:07:26 +02:00
Anders Ingemann
989f33c226 Kill the initalize() function. Nobody uses it except ec2
The boto debug messages are now silenced with a task.
2015-05-03 12:31:44 +02:00
Anders Ingemann
2ef9382a55 Check whether all tasks found include the ones we resolved 2015-05-03 08:04:20 +02:00
Anders Ingemann
a7f2327e42 Litter the manifest schemas with additionalProperties:false
This pretty much eliminates the possiblity of undiscovered typos in the manifest
2015-05-02 13:04:30 +02:00
Anders Ingemann
1f6f23e680 Fix #104: Don't verify default target when adding packages 2015-04-29 23:51:55 +02:00
Anders Ingemann
71c7d445ad Fix #217, by introducing class for comparison of releases 2015-04-29 21:38:06 +02:00
Tiago Ilieve
3131558691 Fix msdos partition/filesystem types definition
This closes #142.
2015-04-25 21:07:48 -03:00
Tiago Ilieve
22760c76db Revert a2cf28b (#213)
Looks like we may or may not need to create those uuid links by
ourselves. This patch also adds a verification to not create/delete the
link if it already exists or not, respectively.
2015-04-25 19:24:55 -03:00
Anders Ingemann
a2cf28b054 Revert 03efa0f (#210)
It seems the bug was only present on my old dev bootstrapping machine

This reverts commit 03efa0ffdf1ee0d3cf81905e6e4d9f5f6aa62143.
2015-04-16 22:22:49 +02:00
Anders Ingemann
f1e4d34eb9 Fix error mentioned in #152 (Pyro4 shouldn't be a dependency) 2015-04-16 22:22:49 +02:00
Anders Ingemann
3c17c756a1 Fix typo in docs 2015-04-16 22:22:48 +02:00
Anders Ingemann
3c5d385a69 Fix grub boot on ec2 hvm jessie 2015-04-16 22:22:48 +02:00
Anders Ingemann
f4851ac06d fix typo in comment 2015-04-16 22:22:48 +02:00
Anders Ingemann
9101b2e9ec Add a little helpful not to tasklist ordering warning 2015-04-16 22:22:47 +02:00
Anders Ingemann
50297d790c Fix problem with 1 MiB too large volume when combining gpt and grub 2015-04-16 22:22:47 +02:00
Anders Ingemann
80ac206fb4 Issue warning when specifying pre/successors across phases 2015-04-16 22:22:47 +02:00
Anders Ingemann
b582bac853 Generally deny installing grub on squeeze 2015-04-16 22:22:47 +02:00
Anders Ingemann
25051d4c04 Improve __getstate__ for bootstrapinfo
This approach may be a little hacked, but it works for now and
if it breaks at some point in the future because of e.g. circular references
that bridge will have to be crossed then
2015-04-16 22:21:46 +02:00
Anders Ingemann
e035f83edf Fix problem when (de-)serializing bootstrapinfo twice 2015-04-16 22:21:46 +02:00
Anders Ingemann
3c642e0b02 Fix serialization of DictClass
using it in Queue.put somehow broke it
2015-04-16 22:21:46 +02:00
Anders Ingemann
b067ada15e Introduce some awesome signal handling
We can now press Ctrl+C remotely  while any subprocess of the bootstrapping process is running,
previously SIGINTs weren't propagated to the bootstrapping process because there was a thread
in between it all. Now the bootstrapping process is in it's own process group.
2015-04-16 22:21:45 +02:00
Anders Ingemann
4cbc8e4f8e Related to 26bb907, both gpt and msdos partitions need the 1 sector gap now 2015-04-16 22:21:45 +02:00
Anders Ingemann
a62ce1705a Remove the PartitionGap class, it's way too much of a hassle to work with
Instead pad_start and pad_end have been introduced
2015-04-16 22:21:44 +02:00
Anders Ingemann
e5dd68acc7 Extlinux booting on gpt now working 2015-04-16 22:21:44 +02:00
Anders Ingemann
9a50cea204 Add 1 sector gap between partitions on GPT 2015-04-16 22:21:44 +02:00
Anders Ingemann
4d74c72d99 Simplify GPT a little by explicitly taking care of the GPT primary & secondary
Do the math for the GPT offset a little differently
2015-04-16 22:21:44 +02:00
Anders Ingemann
016fef606f Account for PartitioGap in a few more places 2015-04-16 22:21:44 +02:00
Anders Ingemann
31b9cb5caa The dmsetup function still divided self.size by 512, which is not necessary any longer since we are calculating in actual sectors now 2015-04-16 22:21:43 +02:00
Anders Ingemann
ac7e32d35e Preserve stacktraces when reraising exceptions 2015-04-16 22:21:43 +02:00
Anders Ingemann
16eaade09a Fix sectors/bytes type problem with single partition 2015-04-16 22:21:42 +02:00
Anders Ingemann
a476248ed6 Partition volumes by sectors instead of bytes
This allows for finer grained control over the partition sizes and gaps
2015-04-16 22:21:13 +02:00
Anders Ingemann
e8d6e7f602 factor AbstractPartition.Mount out into separate module and make it serializable 2015-04-16 22:15:20 +02:00
Anders Ingemann
e9137ac172 Make serialization a lot more easy to handle 2015-04-16 22:15:20 +02:00
Anders Ingemann
ab18516f79 Support SIGINT over the network 2015-04-16 22:15:20 +02:00