Merge "Add passthrough configuration glue."

This commit is contained in:
Jenkins 2014-04-22 19:20:08 +00:00 committed by Gerrit Code Review
commit 439825b1b0
3 changed files with 107 additions and 0 deletions

View File

@ -45,3 +45,7 @@ Resources:
base_image_id: {get_input: nova_image}
live_update_image_id: {get_input: live_update_compute_image}
completion-signal: {get_input: deploy_signal_id}
NovaComputePassthrough:
Type: OS::Heat::StructuredConfig
Properties:
config: {get_input: passthrough_config}

View File

@ -6,6 +6,43 @@ Parameters:
Description: The password for the keystone admin account, used for monitoring, querying neutron etc.
Type: String
NoEcho: true
ExtraConfig:
Description: |
Additional configuration to inject into the cluster. The JSON should have
the following structure:
{"FILEKEY":
{"config":
[{"section": "SECTIONNAME",
"values":
[{"option": "OPTIONNAME",
"value": "VALUENAME"
}
]
}
]
}
}
For instance:
{"nova":
{"config":
[{"section": "default",
"values":
[{"option": "compute_manager",
"value": "ironic.nova.compute.manager.ClusterComputeManager"
}
]
},
{"section": "cells",
"values":
[{"option": "driver",
"value": "nova.cells.rpc_driver.CellsRPCDriver"
}
]
}
]
}
}
Type: Json
KeyName:
Description: Name of an existing EC2 KeyPair to enable SSH access to the instances
Type: String
@ -163,3 +200,11 @@ Resources:
live_update_tenant_name: {Ref: LiveUpdateTenantName}
nova_image: {Ref: NovaImage}
live_update_image_id: {Ref: LiveUpdateComputeImage}
NovaCompute0Passthrough:
Type: OS::Heat::StructuredDeployment
Properties:
config: {Ref: NovaComputePassthrough}
server: {Ref: NovaCompute0}
signal_transport: NO_SIGNAL
input_values:
passthrough_config: {Ref: ExtraConfig}

View File

@ -21,6 +21,44 @@ Parameters:
Default: tgtadm
Description: The iSCSI helper to use with cinder.
Type: String
ExtraConfig:
Default: {}
Description: |
Additional configuration to inject into the cluster. The JSON should have
the following structure:
{"FILEKEY":
{"config":
[{"section": "SECTIONNAME",
"values":
[{"option": "OPTIONNAME",
"value": "VALUENAME"
}
]
}
]
}
}
For instance:
{"nova":
{"config":
[{"section": "default",
"values":
[{"option": "compute_manager",
"value": "ironic.nova.compute.manager.ClusterComputeManager"
}
]
},
{"section": "cells",
"values":
[{"option": "driver",
"value": "nova.cells.rpc_driver.CellsRPCDriver"
}
]
}
]
}
}
Type: Json
OvercloudControlFlavor:
Default: baremetal
Description: Flavor for control nodes to request when deploying.
@ -246,6 +284,14 @@ Resources:
- {Ref: CloudName}
# If CloudName is unset, make the hosts line still valid
- unused
NovaCompute0Passthrough:
Type: OS::Heat::StructuredDeployment
Properties:
config: {Ref: NovaComputePassthrough}
server: {Ref: NovaCompute0}
signal_transport: NO_SIGNAL
input_values:
passthrough_config: {Ref: ExtraConfig}
NovaCompute0:
Type: FileInclude
Path: nova-compute-instance.yaml
@ -354,6 +400,10 @@ Resources:
ntp:
servers:
- {server: {Ref: NtpServer}, fudge: "stratum 0"}
controllerPassthrough:
Type: OS::Heat::StructuredConfig
Properties:
config: {get_input: passthrough_config}
controller0:
Type: OS::Nova::Server
Properties:
@ -412,6 +462,14 @@ Resources:
input_values:
ssl_certificate: {Ref: SSLCertificate}
ssl_key: {Ref: SSLKey}
controller0Passthrough:
Type: OS::Heat::StructuredDeployment
Properties:
config: {Ref: controllerPassthrough}
server: {Ref: controller0}
signal_transport: NO_SIGNAL
input_values:
passthrough_config: {Ref: ExtraConfig}
Outputs:
KeystoneURL:
Description: URL for the Overcloud Keystone service