Commit graph

154 commits

Author SHA1 Message Date
Anders Ingemann
803ec8e987
Merge pull request #450 from CMeza99/bootstraper_gpg
Expose gpg flags for debootstrap
2018-02-10 23:11:40 +01:00
Carlos Meza
5727550ad4 expose gpg flags for debootstrap 2018-02-09 22:19:59 +00:00
Anders Ingemann
1d755abfc6
Merge pull request #449 from CMeza99/remove_eol
Remove squeeze support
2018-02-08 09:45:19 +01:00
Carlos Meza
a3584e6de9 remove squeeze support 2018-02-08 06:02:20 +00:00
Veli-Matti Lintu
a0007b48a9 Add new attribute 'mode' for partitions to set the permissions of the
mountpoints. Without this having /tmp on separate partition results
in error as the permissions of /tmp are 0755. Setting them to 01777
fixes the setup.
2018-02-06 15:56:24 +02:00
Alex Hegedus
c0350e7c8a Added security field to packages. 2017-11-27 18:48:57 -08:00
Anders Ingemann
85a0e6a191
Make trusted-keys paths in manifest relative to manifest 2017-07-14 18:25:07 +02:00
Brendan Harley
cc69173e52 Add qcow2 as a disk backend for KVM
This allows to build an image with qcow2 as a disk backend.

The update implements a new class that inherits from QEMUVolume and just
needs the extention and file format.
2017-06-16 15:54:51 +02:00
Brendan Harley
511a44f72e Add LVM as a disk backend
Enables the use of Logical Volumes as disk backends.

It uses an existing volume group and has no support for creating a new one.
It will not override an existing logical volume and fail gracefully.

The lv is created, activated and then mounted as a loop device.
The boostraping process is then launched on the loop device.
Once the process is completed, the lv is unmounted and desactivated.

The created lv will be deleted should the boostraping process fail.

The lv must be activated before use.

A manifest has been included for testing purposes.
2017-06-08 17:05:48 +02:00
Michael Gerlach
c088e1afac cleanup partitioning in schema 2017-01-31 21:45:59 +01:00
Michael Gerlach
02972e6b27 Fix to comply to code style 2016-12-10 19:04:43 +01:00
Michael Gerlach
d462c5ab8f Fix NoPartitions class as AbstractPartition got mount_opts as additional parameter 2016-12-10 16:28:13 +01:00
Michael Gerlach
167a0af4ce Add handling for addtitional partitions 2016-12-10 16:11:58 +01:00
Michael Gerlach
87707486cd Add mountopts to classes and methods 2016-12-10 16:11:58 +01:00
Michael Gerlach
0a5a3e153b Add pattern to enable definition of additional partitions 2016-12-10 16:11:38 +01:00
Michael Gerlach
e2606acbdc Modify Schema to enable mountopts 2016-12-10 16:10:37 +01:00
Michael Gerlach
35f1e44087 Fix Schema to require a type in partition-table definition 2016-12-10 16:09:58 +01:00
Marcin Kulisz
5267d95360 Added AMI tagging for AWS provider +
* minor syntax fixes
* added official Stretch manifest
2016-10-31 15:26:17 +00:00
Marcin Kulisz
d3b954cf82 Fixing andsens/bootstrap-vz#338 2016-09-23 09:30:41 +01:00
Nicolas Braud-Santoni
90da634226
Systematically use rel_path for relative paths 2016-09-12 19:11:20 +02:00
Anders Ingemann
73c2305a4c Add log message about tasklist generation
Generating the tasklist takes >1s, so it's nice to
know what bootstrap-vz is actually doing.
2016-06-07 19:05:31 +02:00
Anders Ingemann
e030b9f84f Fix bug with task list generation
Only tasks from the loaded provider and plugins were
considered, when creating the task graph.
This was a problem with the prebootstrapped plugin
specifically, which could be used with both ec2 and
vbox.
Fixed the problem by loading all known plugins and
providers and adding them to the taskgraph, nothing
less will do.
2016-06-05 11:41:18 +02:00
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