Differences between revisions 48 and 49
Revision 48 as of 2015-09-25 14:11:31
Size: 3206
Comment:
Revision 49 as of 2015-10-22 19:37:35
Size: 3217
Comment:
Deletions are marked like this. Additions are marked like this.
Line 50: Line 50:
==== Security ==== ==== GPG verification ====
Line 52: Line 52:
For end to end verification, vagrant has built-in checksumming support, so it is be possible to do something like:
For end to end verification, vagrant has built-in checksumming support, so it is be possible to do something like
Line 59: Line 60:
vagrant box add --checksum $(grep debian-jessie.box SHA256SUMS | awk '{print $1}') --checksum-type sha256 debian/jessie64 https://atlas.hashicorp.com/debian/boxes/jessie64/versions/8.2.0/providers/virtualbox.box vagrant box add --checksum $(grep debian-jessie64.box SHA256SUMS | awk '{print $1}') --checksum-type sha256 debian/jessie64 https://atlas.hashicorp.com/debian/boxes/jessie64/versions/8.2.0/providers/virtualbox.box

Introduction

This is a Work in Progress to build official Debian base boxes for Vagrant available in Atlas, the vagrant cloud backend.

Base Box details

Content

Standard Debian system, as created by the Debian Installer (all packages with priority required, important, standard), with the following Vagrant specific enhancements

  • vagrant unix user, setup according to Upstream recommendations

  • Virtual Box Guest additions installed, build with ?DKMS using the virtualbox-guest-additions-iso package

  • disable udev network persistent naming
  • Speed improvements
    • disable DNS resolution in sshd (speed up logins)
    • use a 0s grub timeout to speed up booting
  • Disk size improvements:
    • removing kernel-headers and build-essential after the DKMS step
    • fill the unused blocks of the file systems with zeroes to reduce disksize

Provisioners

The box does not include provisioners. You can install them at startup by adding in the Vagrant.configure block in your Vagrantfile

# puppet
config.vm.provision "shell", inline: "apt-get install --yes puppet"
# ansible does not need a client, but needs python-apt to install packages
config.vm.provision "shell", inline: "apt-get install --yes python-apt"

Build process

The boxes are currently with Packer from the following git repository http://anonscm.debian.org/cgit/cloud/debian-vm-templates.git/ and uploaded to Hashicorps's Atlas.

See ?Teams/Cloud/RebuildVagrantBaseBoxes to build the boxes yourself or extend them.

Versioning schema

We use the following versioning scheme: DEBIAN VERSION NUMBER + BOX VERSION Ex: 8.0.4 means we use the box uses the Debian release 8.0, the .4 means it is the fourth version based on this release that we uploaded to Atlas

DFSG

The build process requires the non-free virtualbox-guest-additions-iso package, the rest of the build chain and installed packages are DFSG compliant.

GPG verification

For end to end verification, vagrant has built-in checksumming support, so it is be possible to do something like

gpg --verify SHA256SUMS.gpg gpg: Signature made Fri 11 Sep 2015 12:19:50 AM CEST using RSA key ID 91E95791
gpg: Good signature from "Emmanuel "Kasper" Kasprzyk <emmanuel@libera.cc>"

vagrant box add --checksum $(grep debian-jessie64.box SHA256SUMS | awk '{print $1}') --checksum-type sha256  debian/jessie64 https://atlas.hashicorp.com/debian/boxes/jessie64/versions/8.2.0/providers/virtualbox.box

Debian account on Atlas

Currently owned by EmmanuelKasper and AntonioTerceiro, upload rights have been granted to ?JanNiggerman

Todo list

We use this trello board: https://trello.com/b/lVRI6QJt/offical-debian-vagrant-base-boxes

People Involved

JanNiggemann, EmmanuelKasper, Antonio Terceiro