summaryrefslogtreecommitdiff
path: root/index.mdwn
blob: cb91cc16ed07231cfcd3f84cd78fb432587a502a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
[[!meta title="Debian image builder"]]

vmdb2 installs a bare bones Debian system to a disk or disk image
file. It can be used for installing Debian to bare metal hardware,
bootable USB sticks, or to set up system disks for virtual machines.

[[About]] —
[[Contact]] —
[[Code|patches]] —
[[Release process|release]] —
[[Documentation]]

vmdb2 is a community project: it is developed by some people who want
to do it. You could help!

Information on how we do things, and help to get you started if you're
interested:

* Project [[governance]].
    * [[Code of conduct|conduct]]
* [[Road map|roadmap]]
* [[Development blog|blog]] (see [[feeds|blog_feed]] also).
  * [[consensus decisions|tag/consensus-decision]].
  * [[formal decisions|tag/formal-decision]].
  * [[votes|tag/vote]].
* [[Issue (bug) tracking|issues]]
* [[Code; also sending patches|patches]] or pull requests.
* Debian builds [images for Raspberry Pi](http://raspi.debian.net/)
  boards with vmdb2.

# Code of Conduct

Please note that this project is released with a [[Contributor Code of
Conduct|conduct]]. By participating in this project, or in its
interaction spaces, you agree to abide by its terms.

# Latest news from the project:

<div class="newslist">
[[!inline pages="page(blog/*)" 
  limit=5 template=titlepage archive=yes trail=no feeds=no]]
</div>


# Example .vmdb file

A .vmdb file defines how an image is built:

~~~yaml
steps:
  - mkimg: "{{ output }}"
    size: 4G

  - mklabel: msdos
    device: "{{ output }}"

  - mkpart: primary
    device: "{{ output }}"
    start: 1M
    end: 10M
    tag: unused

  - mkpart: primary
    device: "{{ output }}"
    start: 10M
    end: 100%
    tag: rootfs

  - kpartx: "{{ output }}"

  - mkfs: ext4
    partition: rootfs
    label: smoke

  - mount: rootfs

  - unpack-rootfs: rootfs

  - debootstrap: stretch
    mirror: http://deb.debian.org/debian
    target: rootfs
    unless: rootfs_unpacked

  - apt: install
    packages:
      - linux-image-amd64
    tag: rootfs
    unless: rootfs_unpacked

  - cache-rootfs: rootfs
    unless: rootfs_unpacked

  - chroot: rootfs
    shell: |
      sed -i '/^root:[^:]*:/s//root::/' /etc/passwd
      echo pc-vmdb2 > /etc/hostname

  - grub: bios
    tag: rootfs
    console: serial
~~~