From 4540821caa31dc9ed0bedf521cd36975ddafebfa Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Tue, 14 Aug 2012 11:46:42 -0400 Subject: doc: move datasource documentation to doc/sources Each datasource had a bit of doc with it, and those were just landing in doc/. I've moved them to doc/sources now. --- doc/ovf/README | 83 -------------------- doc/ovf/example/ovf-env.xml | 46 ----------- doc/ovf/example/ubuntu-server.ovf | 130 ------------------------------- doc/ovf/make-iso | 156 -------------------------------------- doc/ovf/ovf-env.xml.tmpl | 28 ------- doc/ovf/ovfdemo.pem | 27 ------- doc/ovf/user-data | 7 -- 7 files changed, 477 deletions(-) delete mode 100644 doc/ovf/README delete mode 100644 doc/ovf/example/ovf-env.xml delete mode 100644 doc/ovf/example/ubuntu-server.ovf delete mode 100755 doc/ovf/make-iso delete mode 100644 doc/ovf/ovf-env.xml.tmpl delete mode 100644 doc/ovf/ovfdemo.pem delete mode 100644 doc/ovf/user-data (limited to 'doc/ovf') diff --git a/doc/ovf/README b/doc/ovf/README deleted file mode 100644 index e3ef12e0..00000000 --- a/doc/ovf/README +++ /dev/null @@ -1,83 +0,0 @@ -This directory contains documentation and a demo of the OVF -functionality that is present in cloud-init. - -The example/ directory contains the following files: - example/ovf-env.xml - This is an example ovf environment file - to make an iso that qualifies for the ISO transport, do: - mkdir my-iso - cp environment.xml my-iso/ovf-env.xml - genisoimage -o transport.iso -r my-iso - Then, boot with that ISO attached as a CDrom -- example/ubuntu-server.ovf - Example generated by virtualbox "export" of a simple VM. - It contains a functional ProductSection also. Given answers - to each of the Properties there, a suitable OVF environment file - (ovf-env.xml) could be created. - -== Demo == -In order to easily demonstrate this functionality, simple demo is -contained here. To boot a local virtual machine in either kvm or virtual -box, follow the steps below. - -- download a suitable Ubuntu image - Visit http://cloud-images.ubuntu.com/releases and download a disk image - of Natty, Oneiric or a newer release. - - $ burl="http://cloud-images.ubuntu.com/releases/" - $ disk="ubuntu-11.10-server-cloudimg-i386-disk1" - $ wget "$burl/11.10/release/$disk.img" -O "$disk.img" - -- If you're going to use virtual box, you will need to convert the image - from qcow2 format into a virtual-box friendly VHD format. - $ qemu-img convert -O vdi "$disk.img" "ubuntu.vdi" - -- If you're using kvm, you should create a qcow delta image to store - the changes so you keep the original pristine. - $ qemu-img create -f qcow2 -b "$disk.img" "ubuntu.qcow2" - - Optionally, you could decompress the image, which will make it boot faster - but will take up more local disk space. - $ qemu-img convert -O qcow2 "$disk.img" "$disk.qcow2" - $ qemu-img create -f qcow2 -b "$disk.qcow2" ubuntu.qcow2 - -- Create an ISO file that will provide user-data to the image. - This will put the contents of 'user-data' into an ovf-env.xml file - and create an ISO file that can then be attached at boot to provide - the user data to cloud-init. - - $ ./make-iso ovf-env.xml.tmpl user-data --output ovftransport.iso - -- Boot your virtual machine - The cloud-images boot with kernel and boot progress to ttyS0. - You can change that at the grub prompt if you'd like by editing the - kernel entry. Otherwise, to see progress you'll need to switch - to the serial console. In kvm graphic mode, you do that by clicking - in the window and then pressing pressing 'ctrl-alt-3'. For information - on how to do that in virtualbox or kvm curses, see the relevant - documentation. - - KVM: - $ kvm -drive file=ubuntu.qcow2,if=virtio -cdrom ovftransport.iso \ - -m 256 -net nic -net user,hostfwd=tcp::2222-:22 - - VirtualBox: - - Launch the GUI and create a new vm with $disk.vdi and ovftransport.iso - attached. - - If you use 'NAT' networking, then forward a port (2222) to the - guests' port 22 to be able to ssh. - - Upon successful boot you will be able to log in as the 'ubuntu' user - with the password 'passw0rd' (which was set in the 'user-data' file). - - You will also be able to ssh to the instance with the provided: - $ chmod 600 ovfdemo.pem - $ ssh -i ovfdemo.pem -p 2222 ubuntu@localhost - -- Notes: - * The 'instance-id' that is set in the ovf-env.xml image needs to - be unique. If you want to run the first-boot code of cloud-init - again you will either have to remove /var/lib/cloud ('rm -Rf' is fine) - or create a new cdrom with a different instance-id. To do the - ladder, simply add the '--instance-id=' flag to the 'make-iso' - command above and start your vm with the new ISO attached. diff --git a/doc/ovf/example/ovf-env.xml b/doc/ovf/example/ovf-env.xml deleted file mode 100644 index 13e8f104..00000000 --- a/doc/ovf/example/ovf-env.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - - - - - - ESX Server - 3.0.1 - VMware, Inc. - en_US - - - - - - - - - - - - - - - - - - diff --git a/doc/ovf/example/ubuntu-server.ovf b/doc/ovf/example/ubuntu-server.ovf deleted file mode 100644 index 846483a1..00000000 --- a/doc/ovf/example/ubuntu-server.ovf +++ /dev/null @@ -1,130 +0,0 @@ - - - - - - - Virtual disk information - - - - The list of logical networks - - The bridged network - - - - A virtual machine - Ubuntu - - 11.04 (Natty Narwhal) Server - - - Cloud-Init customization - 11.04 (Natty Narwhal) Server - - - Specifies the instance id. This is required and used to determine if the machine should take "first boot" actions - - - Specifies the hostname for the appliance - - - - This field is optional, but indicates that the instance should 'seed' user-data and meta-data from the given url. If set to 'http://tinyurl.com/sm-' is given, meta-data will be pulled from http://tinyurl.com/sm-meta-data and user-data from http://tinyurl.com/sm-user-data. Leave this empty if you do not want to seed from a url. - - - - This field is optional, but indicates that the instance should populate the default user's 'authorized_keys' with this value - - - - In order to fit into a xml attribute, this value is base64 encoded . It will be decoded, and then processed normally as user-data. - - - - - If set, the default user's password will be set to this value to allow password based login. The password will be good for only a single login. If set to the string 'RANDOM' then a random password will be generated, and written to the console. - - - - Virtual hardware requirements - - Virtual Hardware Family - 0 - Ubuntu 11.04 (Natty Narwhal) Server - vmx-07 qemu-pc qemu-pc-0.13 virtualbox-2.2 - - - hertz * 10^6 - Number of Virtual CPUs - 1 virtual CPU(s) - 1 - 3 - 1 - - - byte * 2^20 - Memory Size - 256MB of memory - 2 - 4 - 256 - - - 0 - USB Controller - usb - 3 - 23 - - - 0 - SCSI Controller - scsiController0 - 4 - lsilogic - 6 - - - 1 - IDE Controller - ideController1 - 5 - 5 - - - 0 - false - cdrom1 - 6 - 5 - 15 - - - 0 - disk1 - ovf:/disk/vmdisk1 - 7 - 4 - 17 - - - 2 - true - bridged - ethernet adapter on "bridged" - ethernet0 - 8 - E1000 - 10 - - - - For more information, see http://ubuntu.com - This is Ubuntu Server. - - - diff --git a/doc/ovf/make-iso b/doc/ovf/make-iso deleted file mode 100755 index 91d0e2e5..00000000 --- a/doc/ovf/make-iso +++ /dev/null @@ -1,156 +0,0 @@ -#!/bin/bash - -VERBOSITY=0 -PROPERTIES=( instance-id hostname user-data seedfrom ) -DEFAULTS=( "i-ovfdemo00" "ovfdemo.localdomain" "" "" ) - -DEF_OUTPUT="ovftransport.iso" -TEMP_D="" - -error() { echo "$@" 1>&2; } -fail() { [ $# -eq 0 ] || error "$@"; exit 1; } - -# propvalue(name, value) -propvalue() { - local prop="" val="$2" i=0 - for prop in "${PROPERTIES[@]}"; do - if [ "$prop" = "$1" ]; then - [ $# -eq 1 ] || DEFAULTS[$i]="$2" - _RET=${DEFAULTS[$i]} - return - fi - i=$(($i+1)) - done - return -} - -Usage() { - cat <&2; [ $# -eq 0 ] || error "$@"; exit 1; } -cleanup() { - [ -z "${TEMP_D}" -o ! -d "${TEMP_D}" ] || rm -Rf "${TEMP_D}" -} - -debug() { - local level=${1}; shift; - [ "${level}" -ge "${VERBOSITY}" ] && return - error "${@}" -} - -short_opts="ho:v" -long_opts="help,output:,verbose" -for i in "${PROPERTIES[@]}"; do - long_opts="$long_opts,$i:" -done -getopt_out=$(getopt --name "${0##*/}" \ - --options "${short_opts}" --long "${long_opts}" -- "$@") && - eval set -- "${getopt_out}" || - bad_Usage - -## <> -output="${DEF_OUTPUT}" -user_data="" - -while [ $# -ne 0 ]; do - cur=${1}; next=${2}; - case "$cur" in - -h|--help) Usage ; exit 0;; - -o|--output) output=${2}; shift;; - -v|--verbose) VERBOSITY=$((${VERBOSITY}+1));; - --) shift; break;; - --*) - for i in "${PROPERTIES[@]}" _none_; do - [ "${cur#--}" == "$i" ] || continue - [ "$i" != "user-data" ] || - next=$(echo "$next" | base64 --wrap=0) || - fail "failed to base64 encode userdata" - propvalue "$i" "$next" - break - done - [ "$i" = "_none_" ] && bad_Usage "confused by $cur" - ;; - esac - shift; -done - -[ $# -eq 1 -o $# -eq 2 ] || - bad_Usage "wrong number of arguments" - -env_tmpl="$1" -ud_file="$2" - -[ -f "$env_tmpl" ] || bad_Usage "$env_tmpl: not a file" -[ -z "$ud_file" -o -f "$ud_file" ] || - bad_Usage "$ud_file: not a file" - -TEMP_D=$(mktemp -d "${TMPDIR:-/tmp}/${0##*/}.XXXXXX") || - fail "failed to make tempdir" -trap cleanup EXIT - -mkdir "$TEMP_D/iso" && iso_d="$TEMP_D/iso" || - fail "failed to make a tempdir?" -ovf_env="$TEMP_D/iso/ovf-env.xml" - -if [ -n "$ud_file" ]; then - user_data=$(base64 --wrap=0 "$ud_file") || - fail "failed to base64 encode $ud_file. Do you have base64 installed?" - propvalue user-data "$user_data" -fi - -changes=( ) -for i in "${PROPERTIES[@]}"; do - changes[${#changes[@]}]="-e" - propvalue "$i" - changes[${#changes[@]}]="s|@@$i@@|$_RET|g" -done - -sed "${changes[@]}" "$env_tmpl" > "$ovf_env" || - fail "failed to replace string in $env_tmpl" - -if [ "${#changes[@]}" -ne 0 ]; then - cmp "$ovf_env" "$env_tmpl" >/dev/null && - fail "nothing replaced in $ovf_env. template is identical to output" -fi - -debug 1 "creating iso with: genisoimage -o tmp.iso -r iso" -( cd "$TEMP_D" && - genisoimage -V OVF-TRANSPORT -o tmp.iso -r iso 2>/dev/null ) || - fail "failed to create iso. do you have genisoimage?" - -if [ "$output" = "-" ]; then - cat "$TEMP_D/tmp.iso" -else - cp "$TEMP_D/tmp.iso" "$output" || - fail "failed to write to $output" -fi - -error "wrote iso to $output" -exit 0 -# vi: ts=4 noexpandtab diff --git a/doc/ovf/ovf-env.xml.tmpl b/doc/ovf/ovf-env.xml.tmpl deleted file mode 100644 index 8e255d43..00000000 --- a/doc/ovf/ovf-env.xml.tmpl +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - ESX Server - 3.0.1 - VMware, Inc. - en_US - - - - - - - - - - - diff --git a/doc/ovf/ovfdemo.pem b/doc/ovf/ovfdemo.pem deleted file mode 100644 index 5bc629c8..00000000 --- a/doc/ovf/ovfdemo.pem +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEpAIBAAKCAQEA1Zq/11Rky/uHdbKJewmEtDABGoSjIFyjoY04T5dFYUNwi0B6 -Km7b85Ylqmi/1KmR4Zvi++dj10XnusoWr/Zruv85hHilMZ9GozL2RD6jU/CaI+rB -QkKSaR/CdmEHBbRimq6T2E9chMhJY0jNzeexJSKVR3QeLdbRZ64H7QGTHp7Ulodu -vS9VwAWcpYbGgcM541fboFAiJOLICM1UPH4x5WDkTq/6yeElSmeiE2lHtESHhyMJ -OSDB3YZ5hw1+4bY3sR+0vZ3VQWzpn1Lwg1X3AZA8yf+ZsmMZHhTFeCglsd8jlLHk -Wudh5mJBkCuwPvRQk1gE5gSnTGti0TUqLIrNRwIDAQABAoIBAGZMrdIXxgp3VWHF -9tfpMBgH4Y9stJ98HpXxh2V+4ih53v2iDKAj5c1cPH/HmQ/lgktVmDjikct43El2 -HbV6RBATyd0q1prUWEUy1ATNJvW9hmTrOlFchrg4EK8XOwC9angAYig3oeyp65PU -O1SAwTMyw+GruARmHHYWQA9/MJF5yexrjBw00w7hnCsqjezU5YIYsXwgcz0Zw+Ix -fDJcZFXF9X3Al7H3ZILW3PpfhcVl7WzkL47TIX4oB/ab2kltaTE90SZMXKVcLvTI -6To2xJAnMUyasRfcGmvE8m0SqWqp66POAUDF2I8qu78inKH2u0rNtLQjyx5btF5K -A39bPnkCgYEA8Joba3QFrbd0zPTP/DawRtTXzdIQcNjj4XEefxBN3Cw7MlCsfgDc -xiAR703zqQ/IDkF00XrU5w7rmDga3Pv66JRzFDwvRVtGb6QV+lg7Ypd/6NI1G5AS -0Qzneer2JytEpHoTqGH/vWcXzJRH2BfaPK/vEF4qhAXBqouz2DXn3EUCgYEA40ZU -eDc4MmHOSuqoggSEDJ5NITgPbdkwOta0BmnBZ36M5vgqN8EfAZISKocLNlERDrRG -MpBlQCulq3rpU7WYkx8hGE21f1YBo+vKkffI56ptO2lAp5iLflkSOypdiVN6OELW -5SzkViohDnxKc6eshVycnNoxh6MqE6ugWSd6ahsCgYEA6t0kQwIgwPDCfYfEt2kT -LjF675lNHzs5R8pKgLKDrpcmufjySJXC7UxE9ZrcbX3QRcozpIEI7vwrko3B+1Gm -Hf87TtdpNYTh/vznz1btsVI+NCFuYheDprm4A9UOsDGWchAQvF/dayAFpVhhwVmX -WYJMFWg2jGWqJTb2Oep1CRkCgYEAqzdkk1wmPe5o1w+I+sokIM1xFcGB/iNMrkbp -QJuTVECGLcpvI6mdjjVY8ijiTX0s+ILfD2CwpnM7T8A83w9DbjJZYFHKla9ZdQBB -j024UK6Xs9ZLGvdUv06i6We1J6t3u8K+2c/EBRWf6aXBAPgkhCOM6K2H+sL1A/Sb -zA5trlkCgYArqJCk999mXQuMjNv6UTwzB0iYDjAFNgJdFmPMXlogD51r0HlGeCgD -OEyup4FdIvX1ZYOCkKyieSngmPmY/P4lZBgQbM23FMp+oUkA+FlVW+WNVoXagUrh -abatKtbZ+WZHHmgSoC8sAo5KnxM9O0R6fWlpoIhJTVoihkZYdmnpMg== ------END RSA PRIVATE KEY----- diff --git a/doc/ovf/user-data b/doc/ovf/user-data deleted file mode 100644 index bfac51fd..00000000 --- a/doc/ovf/user-data +++ /dev/null @@ -1,7 +0,0 @@ -#cloud-config -password: passw0rd -chpasswd: { expire: False } -ssh_pwauth: True - -ssh_authorized_keys: - - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVmr/XVGTL+4d1sol7CYS0MAEahKMgXKOhjThPl0VhQ3CLQHoqbtvzliWqaL/UqZHhm+L752PXRee6yhav9mu6/zmEeKUxn0ajMvZEPqNT8Joj6sFCQpJpH8J2YQcFtGKarpPYT1yEyEljSM3N57ElIpVHdB4t1tFnrgftAZMentSWh269L1XABZylhsaBwznjV9ugUCIk4sgIzVQ8fjHlYOROr/rJ4SVKZ6ITaUe0RIeHIwk5IMHdhnmHDX7htjexH7S9ndVBbOmfUvCDVfcBkDzJ/5myYxkeFMV4KCWx3yOUseRa52HmYkGQK7A+9FCTWATmBKdMa2LRNSosis1H ubuntu@ovfdemo -- cgit v1.2.3