heat_template_version: 2014-10-16

description: >
  Software Config to drive os-net-config for a simple bridge.

resources:
  OsNetConfigImpl:
    type: OS::Heat::StructuredConfig
    properties:
      group: os-apply-config
      config:
        os_net_config:
          network_config:
            -
              type: ovs_bridge
              name: {get_input: bridge_name}
              use_dhcp: true
              # Can't do this yet: https://bugs.launchpad.net/heat/+bug/1344284
              #ovs_extra:
              #  - list_join:
              #    - ' '
              #    - - br-set-external-id
              #      - {get_input: bridge_name}
              #      - bridge-id
              #      - {get_input: bridge_name}
              members:
                -
                  type: interface
                  name: {get_input: interface_name}
                  # force the MAC address of the bridge to this interface
                  primary: true

outputs:
  config_id:
    description: The ID of the OsNetConfigImpl resource.
    value:
      {get_resource: OsNetConfigImpl}
