-
Notifications
You must be signed in to change notification settings - Fork 1
deploystack Client
Welcome to the DeployStack wiki. This page documents all available CLI commands, their arguments, and usage examples.
- deploy
- generate-config
- launch
- image upload
- image remove
- volume create
- volume attach
- volume detach
- volume remove
- volume reset
Starts the full OpenStack deployment on the current node.
Syntax:
deploystack deploy [options]| Argument | Default | Description |
|---|---|---|
--allinone |
— | Generate an automatic configuration on the system and automatically start the deployment. |
--config-file <config-file-path> |
— | Start deployment from an existing configuration file. |
--install-cinder {yes,no} |
yes |
Install the Cinder (Block Storage) service if set to yes. |
--install-horizon {yes,no} |
yes |
Install Horizon (Dashboard) if set to yes. |
--lvm-image-size-in-gb <size-in-gigabytes> |
5 |
LVM image size for Cinder. |
--neutron-driver {ovs,ovn} |
ovs |
Network driver to use for Neutron. |
--os-release <openstack-release> |
caracal |
The OpenStack release to install for deployment. |
--generate-only |
— | Generate the configuration automatically without starting the deployment. |
Generate a pre-compiled configuration file without deploying:
deploystack deploy --allinone --generate-onlyThen start the deployment using the generated file:
deploystack deploy --config-file openstack-config-xxxx.yamlGenerates an empty template configuration file that must be filled in manually before deployment.
Syntax:
deploystack generate-config FILE_PATHdeploystack generate-config ~/openstack-config.yamlNote:
deploy --allinone --generate-onlycreates a pre-compiled configuration file for the current system, whilegenerate-configcreates an empty file that you must compile manually.
Quickly launches an OpenStack instance using the default image, flavor, and network.
Syntax:
deploystack launch [options]| Argument | Default | Description |
|---|---|---|
--name <name> |
(auto-generated) | Name of the instance. |
--image <image> |
cirros |
Image to use. |
--flavor <flavor> |
m1.tiny |
Flavor to use. |
--keypair <keypair> |
(auto-generated) | SSH key to log into the instance. Leave empty to let the utility generate a new keypair automatically. |
--password <password> |
— | Password for the administrator user (for compatible Linux/Windows images only). |
--network <network> |
internal |
The main network that will be connected to the instance |
--timeout <seconds> |
100 |
Maximum time to wait for the instance to become active. (Useful for large images) |
deploystack launch --name test-instance --password MySecret123Upload a new Linux cloud image from the web to OpenStack distribution.
Syntax:
deploystack image upload [options]| Argument | Default | Description |
|---|---|---|
--os <os> |
— | Operating system of the image (ubuntu, centos, debian, etc.) |
--image-name <name> |
(auto-generated) | Name to assign to the uploaded image. |
--version <version> |
— | OS version of the image. |
--visibility {public,private,shared} |
public |
Visibility of the image in Glance. |
--output-dir <path> |
/tmp |
Directory where the image will be temporarily downloaded. |
--keep |
no |
Keep the downloaded image file after upload. |
--arch <arch> |
amd64 |
Architecture of the image. |
--timeout <seconds> |
300 |
Maximum time to wait for the image to become active. |
Upload an Ubuntu Noble image with default settings:
deploystack image upload --os ubuntu --version nobleUpload with a custom name and shared visibility:
deploystack image upload --os ubuntu --version noble --image-name "Ubuntu Noble" --visibility sharedNote: If
--image-nameis not provided, DeployStack generates a name based on OS, version, and architecture.
Removes an image from the current OpenStack deployment.
Syntax:
deploystack image remove --image <image> [--timeout <timeout>]| Argument | Default | Description |
|---|---|---|
--image <image> |
— | Name or ID of the image to remove from Glance. |
--timeout <seconds> |
300 |
Maximum time to wait to check if the image has been deleted in OpenStack (default: 300s) |
Remove an image named ubuntu-jammy-amd64:
deploystack image remove ubuntu-jammy-amd64Warning: This operation permanently deletes the image from OpenStack. Ensure no running instances rely on this image.
Create a new volume in the OpenStack distribution
Syntax:
deploystack volume create --name <name> --size <size-in-gb> [--is-bootable] [--image <image>] [--backup <backup>] [--snapshot <snapshot>]| Argument | Default | Description |
|---|---|---|
--image <image> |
(auto-generated) | The name of the volume to create |
--size <size-in-gb> |
5 |
The size of the volume in GB (default: 5 GB) |
--is-bootable |
- | Mark the volume as bootable. Use this flag if the volume should be usable as a boot disk |
--image |
- | Optional Glance image ID or name to create the volume from |
--backup |
- | Optional Cinder Volume Backup ID or name to create the volume from |
--snapshot |
- | Optional Cinder Volume Snapshot ID or name to create the volume from |
--timeout |
300 |
Maximum time in seconds to wait for the volume to become available in OpenStack (default: 300s) |
Create an empty volume:
deploystack volume create --name volume-test --size 5Attach the volume to a specific instance
Syntax:
deploystack volume attach --volume <volume> --instance <instance>| Argument | Default | Description |
|---|---|---|
--volume <volume> |
- | ID or name of the volume to attach |
--instance <instance> |
- | ID or name of the instance to attach the volume to |
Attach a specific volume to an instance:
deploystack volume attach --volume volume-test --instance windows-server-2016Detaches a volume from an instance
Syntax:
deploystack volume detach --volume <volume> --instance <instance>| Argument | Default | Description |
|---|---|---|
--volume <volume> |
— | ID or name of the volume to detach |
--instance <instance> |
— | ID or name of the instance to detach the volume from |
deploystack volume detach --volume volume-test --instance windows-server-2016Removes a volume from the current OpenStack deployment.
Syntax:
deploystack volume remove --volume <volume> [--timeout <timeout>]| Argument | Default | Description |
|---|---|---|
--volume <volume> |
— | Volume Name or ID |
--timeout <seconds> |
300 |
Maximum time to wait to check if the volume has been deleted in OpenStack (default: 300s) |
Remove a volume named test-volume:
deploystack volume remove --volume test-volume
⚠️ Warning: This operation permanently deletes the volume from OpenStack. Ensure no running instances are attached to this volume before proceeding.
Reset the state of a volume that has become inconsistent
Syntax:
deploystack volume reset --volume <volume> [--force]| Argument | Default | Description |
|---|---|---|
--volume <volume> |
— | Volume Name or ID |
--force |
— | Skip safety checks and force the volume status reset |
Reset a volume state named test-volume:
deploystack volume reset --volume test-volume
⚠️ WARNING: Use--forceonly in special recovery scenarios, for example when an instance has already been deleted but the volume still has ghost attachments and remains marked asin-use.Never use
--forceif the volume is actively attached to a running instance, as this may cause data corruption or inconsistent states.
For issues or contributions, visit the project repository.