Module openstack¶
License: Apache 2.0
Version: 4.0.8
Typedefs¶
- typedef openstack::admin_state¶
Base type
string
Type constraint
((self == 'up') or (self == 'down'))
- typedef openstack::container_format¶
Base type
string
Type constraint
(self in ['ami', 'ari', 'aki', 'bare', 'ovf', 'ova', 'docker'])
- typedef openstack::direction¶
Base type
string
Type constraint
((self == 'ingress') or (self == 'egress'))
- typedef openstack::disk_format¶
Base type
string
Type constraint
(self in ['ami', 'ari', 'aki', 'vhd', 'vhdx', 'vmdk', 'raw', 'qcow2', 'vdi', 'iso', 'ploop'])
- typedef openstack::mac_addr¶
Base type
string
Type constraint
std::validate_type('pydantic.constr',self,{'regex': '^([0-9a-fA-F]{2})(:[0-9a-fA-F]{2}){5}|$', 'strict': True})
- typedef openstack::protocol¶
Base type
string
Type constraint
(self in ['tcp', 'udp', 'icmp', 'sctp', 'all'])
- typedef openstack::visibility¶
Base type
string
Type constraint
(self in ['public', 'private'])
Entities¶
- entity openstack::AddressPair¶
Parents:
std::Entity
An address pair that is added to a host port
- attribute std::ipv4_network address¶
The address range that is allowed on this port (network interface)
- attribute openstack::mac_addr? mac=null¶
The following implements statements select implementations for this entity:
std::none
constrainttrue
- entity openstack::EndPoint¶
Parents:
openstack::OpenStackResource
- attribute string region¶
- attribute string internal_url¶
- attribute string public_url¶
- attribute string admin_url¶
- attribute string service_id¶
- relation openstack::Service service [1]¶
other end:
openstack::Service.endpoint [0:1]
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.endpoints [0:*]
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
openstack::endPoint
,openstack::providerRequire
constrainttrue
- entity openstack::Flavor¶
Parents:
openstack::OpenStackResource
A machine flavor for OpenStack VMs
- attribute string name¶
Descriptive name of the flavor. While OpenStack does not consider the name unique, this module does.
- attribute int ram¶
Memory in MB for the flavor
- attribute int vcpus¶
Number of VCPUs for the flavor
- attribute int disk¶
Size of local disk in GB
- attribute string? flavor_id=null¶
OpenStack unique ID. You can use the reserved value “auto” to have Nova generate a UUID for the flavor in cases where you cannot simply pass null.
- attribute int ephemeral=0¶
Ephemeral disk size in GB
- attribute int swap=0¶
Swap space in MB
- attribute float rxtx_factor=1.0¶
RX/TX factor
- attribute bool is_public=true¶
Whether the flavor is publicly visible
- attribute dict extra_specs={}¶
Set extra specs on a flavor. See https://docs.openstack.org/nova/rocky/admin/flavors.html
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.flavors [0:*]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::FloatingIP¶
Parents:
openstack::OpenStackResource
- attribute string name¶
- attribute std::ipv4_address address¶
- attribute bool force_ip=false¶
- relation openstack::Project project [1]¶
other end:
openstack::Project.floating_ips [0:*]
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.floating_ips [0:*]
- relation openstack::Network external_network [1]¶
other end:
openstack::Network.floating_ips [0:*]
- relation openstack::HostPort port [1]¶
other end:
openstack::HostPort.floating_ips [0:*]
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
openstack::fipName
,openstack::providerRequire
constrainttrue
openstack::fipAddr
constraint(not force_ip)
- entity openstack::GroupRule¶
Parents:
openstack::SecurityRule
- relation openstack::SecurityGroup remote_group [1]¶
other end:
openstack::SecurityGroup.remote_group_rules [0:*]
The following implements statements select implementations for this entity:
std::none
constrainttrue
- entity openstack::Host¶
Parents:
std::Host
,openstack::VMAttributes
- attribute bool purged=false¶
Set whether this Host should exist or not.
- attribute bool purge_on_delete=false¶
Purge this Host when it is deleted from the configuration model.
- relation openstack::VirtualMachine vm [1]¶
other end:
openstack::VirtualMachine.host [0:1]
- relation openstack::Subnet subnet [0:1]¶
- relation ssh::Key key_pair [1]¶
- relation openstack::Project project [1]¶
- relation openstack::Provider provider [1]¶
- relation openstack::SecurityGroup security_groups [0:*]¶
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
openstack::eth0Port
constraintsubnet is defined
std::hostDefaults
,openstack::openstackVM
constrainttrue
- entity openstack::HostPort¶
Parents:
openstack::Port
A port attached to a VM
- attribute string name¶
The name of the host port.
- attribute bool portsecurity=true¶
Enable or disable port security (security groups and spoofing filters)
- attribute bool dhcp=true¶
Enable dhcp for this port or not for this port
- attribute int port_index=0¶
The index of the port. This determines the order of the interfaces on the virtual machine. 0 means no specific order.
- attribute int retries=20¶
A hostport can only be attached to a VM when it is in an active state. The handler will skip this port when the VM is not ready. To speed up deployments, the handler can retry this number of times before skipping the resource.
- attribute int wait=5¶
The number of seconds to wait between retries.
- relation openstack::Subnet subnet [1]¶
other end:
openstack::Subnet.host_ports [0:*]
- relation openstack::VirtualMachine vm [1]¶
other end:
openstack::VirtualMachine.ports [0:*]
- relation openstack::FloatingIP floating_ips [0:*]¶
other end:
openstack::FloatingIP.port [1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::IPrule¶
Parents:
openstack::SecurityRule
- attribute std::ipv4_network remote_prefix¶
The following implements statements select implementations for this entity:
std::none
constrainttrue
- entity openstack::Image¶
Parents:
openstack::OpenStackResource
A machine image for OpenStack VMs
- attribute string name¶
Name for the flavor. Inmanta treats image names as unique per provider.
- attribute string uri¶
a link to the download location of the image.
- attribute openstack::container_format? container_format='bare'¶
Must be one of [null, ami, ari, aki, bare, ovf, ova, docker].
- attribute openstack::disk_format? disk_format='qcow2'¶
Must be one of [null, ami, ari, aki, vhd, vhdx, vmdk, raw, qcow2, vdi, iso, ploop].
- attribute std::uuid? image_id=null¶
uuid to identify the image. Auto set by OpenStack if not set.
- attribute openstack::visibility visibility='public'¶
Whether the image is visible across all projects. Can either be public or private. Shared and community are currently not implemented.
- attribute bool protected=false¶
Whether the image can be deleted or not. Inmanta will never delete protected images.
- attribute dict metadata={}¶
Various metadata passed as a dict.
- attribute bool skip_on_deploy=true¶
When set, inmanta will not wait for the image to be deployed and mark it as skipped.
- attribute bool purge_on_delete=false¶
When set to true, the image will be removed when no longer present in the model.
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.images [0:*]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::Network¶
Parents:
openstack::OpenStackResource
A neutron network owned by a project
- attribute string name¶
- attribute bool external=false¶
- attribute string physical_network=''¶
- attribute string network_type=''¶
- attribute int segmentation_id=0¶
- attribute bool? vlan_transparent=null¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.networks [0:*]
- relation openstack::Project project [1]¶
other end:
openstack::Project.networks [0:*]
- relation openstack::Subnet subnets [0:*]¶
other end:
openstack::Subnet.network [1]
- relation openstack::Router routers [0:*]¶
other end:
openstack::Router.ext_gateway [0:1]
- relation openstack::FloatingIP floating_ips [0:*]¶
other end:
openstack::FloatingIP.external_network [1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::OpenStackResource¶
Parents:
std::PurgeableResource
,std::ManagedResource
Base class for all openstack resources
- attribute bool send_event=true¶
Forced to default true. This means that all resources that subscribe to this resource will run their process events / reload.
The following implementations are defined for this entity:
- entity openstack::Port¶
Parents:
openstack::OpenStackResource
A port on a network
- attribute std::ipv4_address address¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.ports [0:*]
- relation openstack::Project project [1]¶
other end:
openstack::Project.ports [0:*]
- relation openstack::AddressPair allowed_address_pairs [0:*]¶
- entity openstack::Project¶
Parents:
openstack::OpenStackResource
A project / tenant in openstack
- attribute string name¶
- attribute bool enabled=true¶
- attribute string description=''¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.projects [0:*]
- relation openstack::Role roles [0:*]¶
Each user can have multiple roles
other end:
openstack::Role.project [1]
- relation openstack::Network networks [0:*]¶
other end:
openstack::Network.project [1]
- relation openstack::Port ports [0:*]¶
other end:
openstack::Port.project [1]
- relation openstack::Subnet subnets [0:*]¶
other end:
openstack::Subnet.project [1]
- relation openstack::Router routers [0:*]¶
other end:
openstack::Router.project [1]
- relation openstack::SecurityGroup security_groups [0:*]¶
other end:
openstack::SecurityGroup.project [1]
- relation openstack::FloatingIP floating_ips [0:*]¶
other end:
openstack::FloatingIP.project [1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::Provider¶
Parents:
std::Entity
The configuration for accessing an Openstack based IaaS
- attribute string name¶
- attribute string connection_url¶
- attribute bool verify_cert=true¶
Indicates whether the SSL/TLS certificate should be verified.
- attribute string username¶
- attribute string password¶
- attribute string tenant¶
- attribute string token=''¶
- attribute string admin_url=''¶
- attribute bool auto_agent=true¶
- relation openstack::Project projects [0:*]¶
other end:
openstack::Project.provider [1]
- relation openstack::User users [0:*]¶
other end:
openstack::User.provider [1]
- relation openstack::Role roles [0:*]¶
other end:
openstack::Role.provider [1]
- relation openstack::Service services [0:*]¶
other end:
openstack::Service.provider [1]
- relation openstack::EndPoint endpoints [0:*]¶
other end:
openstack::EndPoint.provider [1]
- relation openstack::Network networks [0:*]¶
other end:
openstack::Network.provider [1]
- relation openstack::Port ports [0:*]¶
other end:
openstack::Port.provider [1]
- relation openstack::Subnet subnets [0:*]¶
other end:
openstack::Subnet.provider [1]
- relation openstack::Router routers [0:*]¶
other end:
openstack::Router.provider [1]
- relation openstack::SecurityGroup security_groups [0:*]¶
other end:
openstack::SecurityGroup.provider [1]
- relation openstack::FloatingIP floating_ips [0:*]¶
other end:
openstack::FloatingIP.provider [1]
- relation openstack::VirtualMachine virtual_machines [0:*]¶
other end:
openstack::VirtualMachine.provider [1]
- relation openstack::Flavor flavors [0:*]¶
other end:
openstack::Flavor.provider [1]
- relation openstack::Image images [0:*]¶
other end:
openstack::Image.provider [1]
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
std::none
constrainttrue
openstack::agentConfig
constraintauto_agent
- entity openstack::Role¶
Parents:
openstack::OpenStackResource
A role in openstack. A role defines membership of a user in a project. This entity is used to connect users to projects. With this, it implicitly defines the role.
- attribute string role_id¶
- attribute string role¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.roles [0:*]
- relation openstack::Project project [1]¶
Each user can have multiple roles
other end:
openstack::Project.roles [0:*]
- relation openstack::User user [1]¶
other end:
openstack::User.roles [0:*]
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
openstack::roleImpl
,openstack::providerRequire
constrainttrue
- entity openstack::Route¶
Parents:
std::Entity
A routing rule to add
- attribute std::ipv4_network destination¶
- attribute std::ipv4_address nexthop¶
- relation openstack::Router router [0:1]¶
other end:
openstack::Router.routes [0:*]
The following implements statements select implementations for this entity:
std::none
constrainttrue
- entity openstack::Router¶
Parents:
openstack::OpenStackResource
A router
- attribute openstack::admin_state admin_state='up'¶
- attribute string name¶
- attribute bool ha=false¶
- attribute bool distributed=false¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.routers [0:*]
- relation openstack::Project project [1]¶
other end:
openstack::Project.routers [0:*]
- relation openstack::RouterPort ports [0:*]¶
other end:
openstack::RouterPort.router [1]
- relation openstack::Subnet subnets [0:*]¶
other end:
openstack::Subnet.router [0:1]
- relation openstack::Network ext_gateway [0:1]¶
other end:
openstack::Network.routers [0:*]
- relation openstack::Route routes [0:*]¶
other end:
openstack::Route.router [0:1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::RouterPort¶
Parents:
openstack::Port
A port attached to a router
- attribute string name¶
- relation openstack::Subnet subnet [1]¶
other end:
openstack::Subnet.routers [0:*]
- relation openstack::Router router [1]¶
other end:
openstack::Router.ports [0:*]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::SecurityGroup¶
Parents:
openstack::OpenStackResource
- attribute string description=''¶
- attribute string name¶
- attribute bool manage_all=true¶
- attribute int retries=10¶
A security group can only be deleted when it is no longer in use. The API confirms the delete of a virtual machine for example, but it might still be in progress. This results in a failure to delete the security group. To speed up deployments, the handler can retry this number of times before skipping the resource.
- attribute int wait=5¶
The number of seconds to wait between retries.
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.security_groups [0:*]
- relation openstack::Project project [1]¶
other end:
openstack::Project.security_groups [0:*]
- relation openstack::VirtualMachine virtual_machines [0:*]¶
- relation openstack::GroupRule remote_group_rules [0:*]¶
other end:
openstack::GroupRule.remote_group [1]
- relation openstack::SecurityRule rules [0:*]¶
other end:
openstack::SecurityRule.group [1]
The following implementations are defined for this entity:
The following implements statements select implementations for this entity:
openstack::sg
,openstack::providerRequire
constrainttrue
- entity openstack::SecurityRule¶
Parents:
std::Entity
A filter rule in the a security group
- attribute openstack::protocol ip_protocol¶
The type of ip protocol to allow. Currently this support tcp/udp/icmp/sctp or all
- attribute std::port port_min=0¶
- attribute std::port port_max=0¶
- attribute std::port port=0¶
- attribute openstack::direction direction¶
- relation openstack::SecurityGroup group [1]¶
other end:
openstack::SecurityGroup.rules [0:*]
- entity openstack::Service¶
Parents:
openstack::OpenStackResource
- attribute string name¶
- attribute string type¶
- attribute string description¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.services [0:*]
- relation openstack::EndPoint endpoint [0:1]¶
other end:
openstack::EndPoint.service [1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::Subnet¶
Parents:
openstack::OpenStackResource
A neutron network subnet
- attribute std::ipv4_network network_address¶
- attribute bool dhcp¶
- attribute string name¶
- attribute string allocation_start=''¶
- attribute string allocation_end=''¶
- attribute std::ipv4_address[] dns_servers=List()¶
- attribute std::ipv4_address? gateway_ip=null¶
The gateway IP to set on this subnet. If set to null, the first IP in the subnet will be used as the gateway_ip. Example: 192.168.0.1 will be used for the network 192.168.0.0/24.
- attribute bool disable_gateway_ip=false¶
When set to true, no gateway IP will be set for the subnet. As such, the gateway_ip parameter will be ignored.
- relation openstack::RouterPort routers [0:*]¶
other end:
openstack::RouterPort.subnet [1]
- relation openstack::HostPort host_ports [0:*]¶
other end:
openstack::HostPort.subnet [1]
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.subnets [0:*]
- relation openstack::Project project [1]¶
other end:
openstack::Project.subnets [0:*]
- relation openstack::Network network [1]¶
other end:
openstack::Network.subnets [0:*]
- relation openstack::Router router [0:1]¶
other end:
openstack::Router.subnets [0:*]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::User¶
Parents:
openstack::OpenStackResource
A user in openstack. A handler for this entity type is loaded by agents.
- attribute string name¶
The name of the user. The name of the user has to be unique on a specific IaaS. The handler will use this name to query for the exact user and its ID.
- attribute string email¶
The email address of the user to use.
- attribute bool enabled=true¶
Enable or disable this user
- attribute string password=''¶
The password for this user. The handler will always reset back to this password. The handler will ignore this attribute when an empty string is set.
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.users [0:*]
- relation openstack::Role roles [0:*]¶
other end:
openstack::Role.user [1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
- entity openstack::VMAttributes¶
Parents:
std::Entity
Entity with vm attributes that can be used for a virtual machine and a host
- attribute string flavor¶
The name of the flavor
- attribute string image¶
The uuid of the image
- attribute string user_data¶
The user_data script to pass
- attribute dict metadata={}¶
A dict of metadata items
- attribute dict personality={}¶
A dict of files (personality)
- attribute bool config_drive=false¶
Attach a configuration drive to the vm
- entity openstack::VirtualMachine¶
Parents:
openstack::OpenStackResource
,openstack::VMAttributes
- attribute string name¶
- relation openstack::HostPort ports [0:*]¶
other end:
openstack::HostPort.vm [1]
- relation openstack::SecurityGroup security_groups [0:*]¶
- relation openstack::HostPort eth0_port [1]¶
- relation ssh::Key key_pair [1]¶
- relation openstack::Project project [1]¶
- relation openstack::Provider provider [1]¶
other end:
openstack::Provider.virtual_machines [0:*]
- relation openstack::Host host [0:1]¶
other end:
openstack::Host.vm [1]
The following implements statements select implementations for this entity:
openstack::providerRequire
constrainttrue
Implementations¶
- implementation openstack::agentConfig¶
- implementation openstack::endPoint¶
- implementation openstack::eth0Port¶
- implementation openstack::fipAddr¶
- implementation openstack::fipName¶
- implementation openstack::openstackVM¶
- implementation openstack::providerRequire¶
- implementation openstack::roleImpl¶
- implementation openstack::sg¶
Plugins¶
- openstack.find_flavor(provider: 'openstack::Provider', vcpus: 'number', ram: 'number', pinned: 'bool' = False) 'string' ¶
Find the flavor that matches the closest to the resources requested.
- Parameters:
vcpus – The number of virtual cpus in the flavor
ram – The amount of ram in gigabyte
pinned – Wether the CPUs need to be pinned (#vcpu == #pcpu)
- openstack.find_image(provider: 'openstack::Provider', os: 'std::OS', name: 'string' = None) 'string' ¶
Search for an image that matches the given operating system. This plugin uses the os_distro and os_version tags of an image and the name and version attributes of the OS parameter.
If multiple images match, the most recent image is returned.
- Parameters:
provider – The provider to query for an image
os – The operating system and version (using os_distro and os_version metadata)
name – An optional string that the image name should contain
Resources¶
- class openstack.EndPoint¶
An endpoint for a service
Resource for entity
openstack::EndPoint
Id attribute
service_id
Agent name
provider.name
Handlers
openstack.EndpointHandler
- class openstack.Flavor¶
A flavor is an available hardware configuration for a server.
Resource for entity
openstack::Flavor
Id attribute
name
Agent name
provider.name
Handlers
openstack.FlavorHandler
- class openstack.FloatingIP¶
A floating ip
Resource for entity
openstack::FloatingIP
Id attribute
name
Agent name
provider.name
Handlers
openstack.FloatingIPHandler
- class openstack.HostPort¶
A port in a router
Resource for entity
openstack::HostPort
Id attribute
name
Agent name
provider.name
Handlers
openstack.HostPortHandler
- class openstack.Image¶
Resource for entity
openstack::Image
Id attribute
name
Agent name
provider.name
Handlers
openstack.ImageHandler
- class openstack.Network¶
This class represents a network in neutron
Resource for entity
openstack::Network
Id attribute
name
Agent name
provider.name
Handlers
openstack.NetworkHandler
- class openstack.Project¶
This class represents a project in keystone
Resource for entity
openstack::Project
Id attribute
name
Agent name
provider.name
Handlers
openstack.ProjectHandler
- class openstack.Role¶
A role that adds a user to a project
Resource for entity
openstack::Role
Id attribute
role_id
Agent name
provider.name
Handlers
openstack.RoleHandler
- class openstack.Router¶
This class represent a router in neutron
Resource for entity
openstack::Router
Id attribute
name
Agent name
provider.name
Handlers
openstack.RouterHandler
- class openstack.RouterPort¶
A port in a router
Resource for entity
openstack::RouterPort
Id attribute
name
Agent name
provider.name
Handlers
openstack.RouterPortHandler
- class openstack.SecurityGroup¶
A security group in an OpenStack tenant
Resource for entity
openstack::SecurityGroup
Id attribute
name
Agent name
provider.name
Handlers
openstack.SecurityGroupHandler
- class openstack.Service¶
A service for which endpoints can be registered
Resource for entity
openstack::Service
Id attribute
name
Agent name
provider.name
Handlers
openstack.ServiceHandler
- class openstack.Subnet¶
This class represent a subnet in neutron
Resource for entity
openstack::Subnet
Id attribute
name
Agent name
provider.name
Handlers
openstack.SubnetHandler
- class openstack.User¶
A user in keystone
Resource for entity
openstack::User
Id attribute
name
Agent name
provider.name
Handlers
openstack.UserHandler
- class openstack.VirtualMachine¶
A virtual machine managed by a hypervisor or IaaS
Resource for entity
openstack::VirtualMachine
Id attribute
name
Agent name
provider.name
Handlers
openstack.VirtualMachineHandler
Handlers¶
- class openstack.FlavorHandler¶
Handler for entity
openstack::Flavor
- class openstack.ImageHandler¶
Handler for entity
openstack::Image
- class openstack.VirtualMachineHandler¶
Handler for entity
openstack::VirtualMachine
- class openstack.NetworkHandler¶
Handler for entity
openstack::Network
- class openstack.RouterHandler¶
Handler for entity
openstack::Router
- class openstack.SubnetHandler¶
Handler for entity
openstack::Subnet
- class openstack.RouterPortHandler¶
Handler for entity
openstack::RouterPort
- class openstack.HostPortHandler¶
Handler for entity
openstack::HostPort
- class openstack.SecurityGroupHandler¶
Handler for entity
openstack::SecurityGroup
- class openstack.FloatingIPHandler¶
Handler for entity
openstack::FloatingIP
- class openstack.ProjectHandler¶
Handler for entity
openstack::Project
- class openstack.UserHandler¶
Handler for entity
openstack::User
- class openstack.RoleHandler¶
creates roles and user, project, role assocations
Handler for entity
openstack::Role
- class openstack.ServiceHandler¶
Handler for entity
openstack::Service
- class openstack.EndpointHandler¶
Handler for entity
openstack::EndPoint