chiark / gitweb /
wip productisation
[autopkgtest.git] / xen / README
1 ---------- Introduction ----------
2
3 The configuration is read as follows:
4  1. set all variables whose defaults are fixed strings to
5      those built-in default values
6  2. process the command line arguments
7  3. read the user configuration file (sourced by bash)
8  4. process the command line arguments again, so they
9      can easily be made to override the user configuration file
10  5. calculate the values for variables which haven't been set
11      and whose default values depend on circumstances (including
12      on other variables)
13
14 ---------- Items which definitely need attention ----------
15
16 adt_guests_domain       .<domain-of-host_hostname>
17 adt_guest_hostname      <distro>.[<nominum>.]<domain>
18 adt_guest_ipaddr        from looking hostname up in the DNS
19         Hostname and IP address for the testbed.
20         If the configuration specifies one of the address and hostname
21         but not the other, the missing information will be found with
22         a DNS lookup.  If neither is specified, adt_guests_domain is
23         used; if it starts with `.' then <distro>.<nominum> is
24         prepended; otherwise just <distro>. is prepended.  NOTE: some
25         effort by the local network administrator to allocate an IP
26         address (and ideally create DNS entries) is essential.  It is
27         not possible to use DHCP for IP address allocation for the
28         testbed.
29
30 ---------- Items that are likely to need attention ----------
31
32 adt_kernel              the booted kernel file /boot/xen*`uname -r`
33         Kernel to boot in the testbed image
34
35 adt_ramdisk             <kernel>.initrd.img
36         Initial ramdisk to provide to the testbid image.
37         "none" means do not provide an initial ramdisk.
38
39 adt_modules             /lib/modules/`uname -r`
40         Directory with modules to be copied into the testbed.
41
42 adt_lvm_vg              the system's LVM volume group if there is only one
43         LVM volume group to create base filesystem image in.
44
45 adt_fs_type             ext3
46 adt_fs_mkfs_args        <none>
47         Filesystem type and any additional arguments to mkfs.  If
48         _args contains whitespace, it results in multiple arguments;
49         it is not possible to pass whitespace-containing arguments to
50         mkfs.
51
52 adt_pbuilder_args       <none>
53         Extra arguments to pass to pbuilder.
54
55 ---------- Tuning parameters ----------
56
57 adt_testbed_ram         256 [Mby]
58         Physical RAM allocated for each testbed instance while
59         creating and running.
60
61 adt_freeze_ram          32 [Mby]
62         Physical RAM size for frozen image; we reduce the testbed
63         to this before freezing it and grow it again when we resume
64         it.
65
66 adt_fs_size             1G
67         Size of base filesystem image.  Should be big enough to
68         contain all of the software under test and all of its working
69         space, as no running testbed can ever use more than this
70         (despite copy-on-write).
71
72 adt_fs_snapsize         500M
73         Space to allocate for copy-on-write snapshot data.  This is
74         the maximum amount of data that a running testbed can use.
75         This value should be less than the adt_fs_size.
76
77 adt_fs_cowchunk         8 [Mby]
78         Copy-on-write chunk size.
79
80 adt_vm_reduce_retries   10 [seconds]
81         Time to wait for VM to reduce its memory following
82         xm mem-set.
83
84 ---------- Configuration for advanced uses ----------
85
86 adt_config              /etc/autopkgtest/xenlvm_<nominum>_conf
87
88 adt_ssh_keytype         dsa
89 adt_ssh_privkey         /root/.ssh/id_<ssh_keytype>_<nominum>
90 adt_ssh_pubkey          <ssh_privkey>.pub
91 adt_ssh_keyident_args   -i <ssh_privkey>
92 adt_ssh_keygen_args     -t <ssh_keytype>
93         SSH keypair to use for authentication to the testbed.
94         If the pubkey file and privkey file do not exist and
95         correspond to each other, a new key will be generated.
96         The best combinations of these variables to set are:
97           keytype [& keygen_args] - just change the key type
98           privkey [& keygen_args] - generate/use a different keypair
99           pubkey, keyident_args - use an existing key via agent etc.,
100                 privkey is ignored if pubkey and keyident_args
101                 are set and pubkey file exists
102
103 adt_nominum             adt
104         Namespace prefix for Xen domains, LVM volumes, devmapper
105         devices, entries in /dev, files in /var, and so on.  You may
106         run several instances of the adt virtualisation system with
107         different nominums and they won't interact.  It is best for
108         this to be a legal DNS label (using alphanumerics and hyphens
109         only); normally it when it is used to construct an identifier
110         it will be separated by other parts by underscores `_', so
111         they should be avoided.
112
113
114 ---------- Items which should not usually need to be changed ----------
115
116 adt_host_hostname       `hostname -f`
117 adt_host_ipaddr         from looking hostname up in the DNS
118         Hostname and IP address for the host, ie the Xen dom0 system.
119         If the configuration specifies one of the address and hostname
120         but not the other, the missing information will be found with
121         a DNS lookup.  Note that if the host system uses a dynamically
122         allocated DHCP address, things will go wrong when the address
123         changes.
124
125 adt_playbase            /var/lib/autopkgtest/xenlvm
126         Base of filesystem playground areas.
127
128 adt_play                <playbase>/<nominum>_<distro>
129         Playground area for this particular testbed construction and
130         data.
131
132 adt_xmconfig            <play>/xmconfig
133         Xen virtual machine creation configuration for xm create.
134         This file will be (over)written during testbed setup.
135
136 adt_lvm_baselv          <nominum>_<distro>_base
137 adt_lvm_cowdatalv       <nominum>_<distro>_cowdata
138         LVM volume for base filesystem image, and copy-on-write
139         buffer.  Will be created during testbed setup, destroying any
140         previous volume if necessary.  This is the logical volume name
141         not including /dev/<lvm_vg>.
142
143 adt_devmapper_cowdev    <nominum>_<distro>_snap
144         devmapper device for copy-on-write image used by testbed when
145         running.  This is the device name in the devmapper namespace,
146         ie not including /dev/mapper.
147
148 adt_fslink_dir          adt-xenlvm
149 adt_fslink_name         <nominum>_<distro>_fs
150         Directory in /dev, and filename in that directory, where the
151         scripts put the symlink used to trick Xen into using a
152         different block device on resume than was used for creation.
153
154 adt_xmname              <nominum>_<distro>
155         Xen virtual machine name, as passed to xm create.