testcloud - Man Page
download qcow2 cloud images and boot them locally.
Synopsis
testcloud [-h, --help] [COMMAND]... [OPTION]... [SUBCOMMAND]... [OPTION]...
Description
testcloud is a small helper script to download and boot cloud images on your machine locally. Currently, only Fedora qcow2 images are supported.
To run testcloud, you need to provide the URL of a cloud image or string in fedora:XX format to the script which will be used for booting.
If you do not have an image location of your own, you can use one of the images from the Fedora Cloud download pages at https://alt.fedoraproject.org/cloud/.
Then, testcloud will download the image and save it in the /var/lib/testcloud/backingstores/. It will use this image to create a backing store for a newly created instance which will be placed in /var/tmp/instances/. When the same image has been previously downloaded, testcloud will NOT download it again and it will use the current image to create the instance.
When the new instance is created, testcloud will show its IP address that you can use to access the running instance via ssh. The login name is fedora and the password is passw0rd. The IP address of an instance is shown when you list the instance (see Commands).
The instance can also be manipulated and controlled with virt-manager.
Configuration
The default configuration should work for many people. However, if you need to override the default settings, you can do it in the settings.py file. The example file in conf/settings-example.py shows the available configuration values which you can alter to suit your needs.
The configuration file must be placed in one of the following locations in order to be recognized.
conf/settings.py in the git checkout
~/.config/testcloud/settings.py
/etc/testcloud/settings.py
Commands
instance
Control and manipulate the instances (see Options) for more details.
image
Control and manipulate the images (see Options) for more details.
Options
- -h, --help
Shows the help message and exits.
- -c CONNECTION, --connection CONNECTION
Provide the URL of a remote libvirt instance to be used instead of the local one. This option can be used with the instance command only.
Subcommands
create
Create a new instance. See the Instance Create Options section for more details.
list
List available running instances and images. Use the --all options to list all instances.
start
Start an existing instance.
stop
Stop a running instance.
reboot
Force the instance to reboot.
remove
Remove an instance or image. If an instance is running, it cannot be removed without the -f option.
destroy
Remove an instance or image. Deprecated, do not use.
clean
Remove non-existing or unsynced libvirt VMs from testcloud.
Instance Create Options
- -u, --url URL
Specify the URL from where testcloud should download the instance qcow2 image of fedora:XX. This option is compulsory.
Where XX is:
- desired Fedora version or
- 'latest' - the latest Fedora GA image or
- 'qa-matrix' - image from https://fedoraproject.org/wiki/Test_Results:Current_Cloud_Test- --ram RAM
Set the amount of RAM that will be available to the instance's VM (in MiB).
- --disksize DISKSIZE
Set the disk size of the instance VM (in GiB).
- --vnc
Open a VNC connection to the :1 display of the instance VM.
- --no-graphic
Turn off the instance VM's graphical display.
- --timeout TIMEOUT
Specify the time (in seconds) to wait for the instance boot to complete. To disable waiting time (default behaviour) set to 0.
Examples
Create a new instance:
testcloud instance create <instance_name> -u <URL>
List all available instances:
testcloud instance list
Start an existing instance:
testcloud instance start <instance_name>
Stop an existing instance:
testcloud instance stop <instance_name>
Remove a running instance:
testcloud instance remove -f <instance_name>
See Also
testcloud's help and the Project's README.md file
Bugs
No known bugs. If you have found a bug, please report it at https://bugzilla.redhat.com.
Author
Mike Ruckman (roshi@fedoraproject.org)