options:
  debug:
    default: False
    type: boolean
    description: Enable debug logging.
  verbose:
    default: False
    type: boolean
    description: Enable verbose logging.
  use-syslog:
    type: boolean
    default: False
    description: |
      Setting this to True will allow supporting services to log to syslog.
  openstack-origin-git:
    default:
    type: string
    description: |
      Specifies a YAML-formatted dictionary listing the git
      repositories and branches from which to install OpenStack and
      its dependencies.

      When openstack-origin-git is specified, openstack-specific
      packages will be installed from source rather than from the
      the nova-compute charm's openstack-origin repository.

      Note that the installed config files will be determined based on
      the OpenStack release of the nova-compute charm's openstack-origin
      option.

      For more details see README.md.
  rabbit-user:
    default: neutron
    type: string
    description: Username used to access RabbitMQ queue
  rabbit-vhost:
    default: openstack
    type: string
    description: RabbitMQ vhost
  data-port:
    type: string
    default:
    description: |
      Space-delimited list of bridge:port mappings. Ports will be added to
      their corresponding bridge. The bridges will allow usage of flat or
      VLAN network types with Neutron and should match this defined in
      bridge-mappings.
      .
      Ports provided can be the name or MAC address of the interface to be
      added to the bridge. If MAC addresses are used, you may provide multiple
      bridge:mac for the same bridge so as to be able to configure multiple
      units. In this case the charm will run through the provided MAC addresses
      for each bridge until it finds one it can resolve to an interface name.
  disable-security-groups:
    type: boolean
    default: false
    description: |
      Disable neutron based security groups - setting this configuration option
      will override any settings configured via the neutron-api charm.
      .
      BE CAREFUL - this option allows you to disable all port level security
      within an OpenStack cloud.
  bridge-mappings:
    type: string
    default: 'physnet1:br-data'
    description: |
      Space-delimited list of ML2 data bridge mappings with format
      <provider>:<bridge>.
  flat-network-providers:
    type: string
    default:
    description: |
      Space-delimited list of Neutron flat network providers.
  vlan-ranges:
    type: string
    default: "physnet1:1000:2000"
    description: |
      Space-delimited list of <physical_network>:<vlan_min>:<vlan_max> or
      <physical_network> specifying physical_network names usable for VLAN
      provider and tenant networks, as well as ranges of VLAN tags on each
      available for allocation to tenant networks.
  # Network configuration options
  # by default all access is over 'private-address'
  os-data-network:
    type: string
    default:
    description: |
      The IP address and netmask of the OpenStack Data network (e.g.,
      192.168.0.0/24)
      .
      This network will be used for tenant network traffic in overlay
      networks.
      .
      In order to support service zones spanning multiple network
      segments, a space-delimited list of a.b.c.d/x can be provided
      The address of the first network found to have an address
      configured will be used.
  ext-port:
    type: string
    default:
    description: |
      Deprecated: Use bridge-mappings and data-port to create a network
      which can be used for external connectivity.  You can call the network
      external and the bridge br-ex by convention, but neither is required

      A space-separated list of external ports to use for routing of instance
      traffic to the external public network. Valid values are either MAC
      addresses (in which case only MAC addresses for interfaces without an IP
      address already assigned will be used), or interfaces (eth0)
  enable-local-dhcp-and-metadata:
    type: boolean
    default: false
    description: |
      Enable local Neutron DHCP and Metadata Agents. This is useful for deployments
      which do not include a neutron-gateway (do not require l3, lbaas or vpnaas
      services) and should only be used in-conjunction with flat or VLAN provider
      networks configurations.
  prevent-arp-spoofing:
    type: boolean
    default: true
    description: |
      Enable suppression of ARP responses that don't match an IP address that belongs
      to the port from which they originate.
      .
      Only supported in OpenStack Liberty or newer, which has the required minimum version
      of Open vSwitch.
  enable-dpdk:
    type: boolean
    default: false
    description: |
      Enable DPDK fast userspace networking; this requires use of DPDK supported network
      interface drivers and must be used in conjuction with the data-port configuration
      option to configure each bridge with an appropriate DPDK enabled network device.
  dpdk-socket-memory:
    type: int
    default: 1024
    description: |
      Amount of hugepage memory in MB to allocate per NUMA socket in deployed systems.
      .
      Only used when DPDK is enabled.
  dpdk-socket-cores:
    type: int
    default: 1
    description: |
      Number of cores to allocate to DPDK per NUMA socket in deployed systems.
      .
      Only used when DPDK is enabled.
  dpdk-driver:
    type: string
    default: uio_pci_generic
    description: |
      Kernel userspace device driver to use for DPDK devices, valid values include:
      .
        vfio-pci
        uio_pci_generic
      .
      Only used when DPDK is enabled.
