summaryrefslogtreecommitdiffstats
path: root/puppet/extraconfig/pre_deploy/controller/neutron-plumgrid.yaml
blob: 7c0a7ad21e763137646ad254d991de6249153f7d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
heat_template_version: 2015-04-30

description: Controller hieradata for Neutron PLUMgrid configuration

parameters:
  server:
    description: ID of the controller node to apply this config to
    type: string
  PLUMgridDirectorServer:
    description: IP address of the PLUMgrid Director Server
    type: string
    default: 127.0.0.1
  PLUMgridDirectorServerPort:
    description: Port of the PLUMgrid Director Server
    type: string
    default: 443
  PLUMgridUsername:
    description: Username for PLUMgrid platform
    type: string
  PLUMgridPassword:
    description: Password for PLUMgrid platform
    type: string
    hidden: true
  PLUMgridServerTimeOut:
    description: Request timeout duration (seconds) to PLUMgrid platform
    type: string
    default: 99
  PLUMgridNovaMetadataIP:
    description: IP address of Nova Metadata
    type: string
    default: 169.254.169.254
  PLUMgridNovaMetadataPort:
    description: Port of Nova Metadata
    type: string
    default: 8775
  PLUMgridL2GatewayVendor:
    description: Vendor for L2 Gateway Switch
    type: string
    default: vendor
  PLUMgridL2GatewayUsername:
    description: Username for L2 Gateway Switch
    type: string
    default: username
  PLUMgridL2GatewayPassword:
    description: Password for L2 Gateway Switch
    type: string
    hidden: true
  PLUMgridIdentityVersion:
    description: Keystone Identity version
    type: string
    default: v2.0
  PLUMgridConnectorType:
    description: Neutron Network Connector Type
    type: string
    default: distributed
  PLUMgridNeutronPluginVersion:
    description: PLUMgrid Neutron Plugin version
    type: string
    default: present
  PLUMgridPlumlibVersion:
    description: PLUMgrid Plumlib version
    type: string
    default: present


resources:
  ControllerPLUMgridConfig:
    type: OS::Heat::StructuredConfig
    properties:
      group: os-apply-config
      config:
        hiera:
          datafiles:
            neutron_plumgrid_data:
              mapped_data:
                neutron::plugins::plumgrid::director_server: {get_input: plumgrid_director_server}
                neutron::plugins::plumgrid::director_server_port: {get_input: plumgrid_director_server_port}
                neutron::plugins::plumgrid::username: {get_input: plumgrid_username}
                neutron::plugins::plumgrid::password: {get_input: plumgrid_password}
                neutron::plugins::plumgrid::nova_metadata_ip: {get_input: plumgrid_nova_metadata_ip}
                neutron::plugins::plumgrid::nova_metadata_port: {get_input: plumgrid_nova_metadata_port}
                neutron::plugins::plumgrid::l2gateway_vendor: {get_input: plumgrid_l2gateway_vendor}
                neutron::plugins::plumgrid::l2gateway_sw_username: {get_input: plumgrid_l2gateway_sw_username}
                neutron::plugins::plumgrid::l2gateway_sw_password: {get_input: plumgrid_l2gateway_sw_password}
                neutron::plugins::plumgrid::connector_type: {get_input: plumgrid_connector_type}
                neutron::plugins::plumgrid::identity_version: {get_input: plumgrid_identity_version}
                neutron::plugins::plumgrid::package_ensure: {get_input: plumgrid_neutron_plugin_version}
                neutron::plugins::plumgrid::plumlib_package_ensure: {get_input: plumgrid_plumlib_version}

  ControllerPLUMgridDeployment:
    type: OS::Heat::StructuredDeployment
    properties:
      config: {get_resource: ControllerPLUMgridConfig}
      server: {get_param: server}
      input_values:
        plumgrid_director_server: {get_param: PLUMgridDirectorServer}
        plumgrid_director_server_port: {get_param: PLUMgridDirectorServerPort}
        plumgrid_username: {get_param: PLUMgridUsername}
        plumgrid_password: {get_param: PLUMgridPassword}
        plumgrid_nova_metadata_ip: {get_param: PLUMgridNovaMetadataIP}
        plumgrid_nova_metadata_port: {get_param: PLUMgridNovaMetadataPort}
        plumgrid_l2gateway_vendor: {get_param: PLUMgridL2GatewayVendor}
        plumgrid_l2gateway_sw_username: {get_param: PLUMgridL2GatewayUsername}
        plumgrid_l2gateway_sw_password: {get_param: PLUMgridL2GatewayPassword}
        plumgrid_identity_version: {get_param: PLUMgridIdentityVersion}
        plumgrid_connector_type: {get_param: PLUMgridConnectorType}
        plumgrid_neutron_plugin_version: {get_param: PLUMgridNeutronPluginVersion}
        plumgrid_plumlib_version: {get_param: PLUMgridPlumlibVersion}

outputs:
  deploy_stdout:
    description: Deployment reference, used to trigger puppet apply on changes
    value: {get_attr: [ControllerPLUMgridDeployment, deploy_stdout]}