Chapter 255. OpenStack Nova Component Available as of Camel version 2.19 The openstack-nova component allows messages to be sent to an OpenStack compute services. 255.1. Dependencies Maven users will need to add the following dependency to their pom.xml. pom.xml <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-openstack</artifactId> <version>USD{camel-version}</version> </dependency> where USD{camel-version } must be replaced by the actual version of Camel. 255.2. URI Format openstack-nova://hosturl[?options] You can append query options to the URI in the following format ?options=value&option2=value&... 255.3. URI Options The OpenStack Nova component has no options. The OpenStack Nova endpoint is configured using URI syntax: with the following path and query parameters: 255.3.1. Path Parameters (1 parameters): Name Description Default Type host Required OpenStack host url String 255.3.2. Query Parameters (9 parameters): Name Description Default Type apiVersion (producer) OpenStack API version V3 String config (producer) OpenStack configuration Config domain (producer) Authentication domain default String operation (producer) The operation to do String password (producer) Required OpenStack password String project (producer) Required The project ID String subsystem (producer) Required OpenStack Nova subsystem String username (producer) Required OpenStack username String synchronous (advanced) Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). false boolean 255.4. Spring Boot Auto-Configuration The component supports 2 options, which are listed below. Name Description Default Type camel.component.openstack-nova.enabled Enable openstack-nova component true Boolean camel.component.openstack-nova.resolve-property-placeholders Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. true Boolean 255.5. Usage You can use following settings for each subsystem: 255.6. flavors 255.6.1. Operations you can perform with the Flavor producer Operation Description create Create new flavor. get Get the flavor. getAll Get all flavors. delete Delete the flavor. 255.6.2. Message headers evaluated by the Flavor producer Header Type Description operation String The operation to perform. ID String ID of the flavor. name String The flavor name. VCPU Integer The number of flavor VCPU. ram Integer Size of RAM. disk Integer Size of disk. swap Integer Size of swap. rxtxFactor Integer Rxtx Factor. If you need more precise flavor settings you can create new object of the type org.openstack4j.model.compute.Flavor and send in the message body. 255.7. servers 255.7.1. Operations you can perform with the Server producer Operation Description create Create new server. createSnapshot Create snapshot of the server. get Get the server. getAll Get all servers. delete Delete the server. action Perform an action on the server. 255.7.2. Message headers evaluated by the Server producer Header Type Description operation String The operation to perform. ID String ID of the server. name String The server name. ImageId String The Image ID. FlavorId String The ID of flavor which will be used. KeypairName String The Keypair name. NetworkId String The network ID. AdminPassword String Admin password of the new server. action org.openstack4j.model.compute.Action An action to perform. If you need more precise server settings you can create new object of the type org.openstack4j.model.compute.ServerCreate and send in the message body. 255.8. keypairs 255.8.1. Operations you can perform with the Keypair producer Operation Description create Create new keypair. get Get the keypair. getAll Get all keypairs. delete Delete the keypair. 255.8.2. Message headers evaluated by the Keypair producer Header Type Description operation String The operation to perform. name String The keypair name. 255.9. See Also Configuring Camel Component Endpoint Getting Started openstack Component

Commands:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-openstack</artifactId> <version>USD{camel-version}</version> </dependency>
openstack-nova://hosturl[?options]
openstack-nova:host