summaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorSteven Hardy <shardy@redhat.com>2016-05-24 11:51:56 +0100
committerGiulio Fidente <gfidente@redhat.com>2016-05-31 11:00:31 +0200
commitbe1b311184424c2ae6720b7b61640bc227467d5f (patch)
treecdf74cce737066522bad3edfe4edf63965c3245a /puppet
parente3cc44579c0e632eb72c3ea9f58f2ab2bc27a251 (diff)
Configure ObjectStorage services via resource chains
Similar to the https://review.openstack.org/#/c/259568 which added support for the composable services StepConfig and ServiceConfigSettings parameters so that the Controller role supports composable services, this adds those interfaces for the ObjectStorage role. Note that at this time the ObjectStorage post config only supports steps 2, 3 and 4, not all those in services/README.rst Partially-Implements: blueprint composable-services-within-roles Change-Id: I22ffaa68a6ccd4be29d51674871268179bcddcbc
Diffstat (limited to 'puppet')
-rw-r--r--puppet/services/README.rst4
-rw-r--r--puppet/swift-storage-post.yaml5
-rw-r--r--puppet/swift-storage.yaml6
3 files changed, 15 insertions, 0 deletions
diff --git a/puppet/services/README.rst b/puppet/services/README.rst
index 38d2ac64..15c8c1f1 100644
--- a/puppet/services/README.rst
+++ b/puppet/services/README.rst
@@ -48,3 +48,7 @@ are re-asserted when applying latter ones.
5) Service activation (Pacemaker)
6) Fencing (Pacemaker)
+
+Note: Not all roles currently support all steps:
+
+ * ObjectStorage role only supports steps 2, 3 and 4
diff --git a/puppet/swift-storage-post.yaml b/puppet/swift-storage-post.yaml
index 2b652443..1aba2bb4 100644
--- a/puppet/swift-storage-post.yaml
+++ b/puppet/swift-storage-post.yaml
@@ -11,6 +11,10 @@ parameters:
NodeConfigIdentifiers:
type: json
description: Value which changes if the node configuration may need to be re-applied
+ StepConfig:
+ type: string
+ description: Config manifests that will be used to step through the deployment.
+ default: ''
resources:
@@ -42,6 +46,7 @@ resources:
- ''
- - get_file: manifests/overcloud_object.pp
- get_file: manifests/ringbuilder.pp
+ - {get_param: StepConfig}
StorageRingbuilderDeployment_Step2:
type: OS::Heat::StructuredDeployments
diff --git a/puppet/swift-storage.yaml b/puppet/swift-storage.yaml
index 3f6f4733..016947cf 100644
--- a/puppet/swift-storage.yaml
+++ b/puppet/swift-storage.yaml
@@ -121,6 +121,9 @@ parameters:
NodeIndex:
type: number
default: 0
+ ServiceConfigSettings:
+ type: json
+ default: {}
resources:
@@ -257,6 +260,7 @@ resources:
- heat_config_%{::deploy_config_name}
- object_extraconfig
- extraconfig
+ - service_configs
- object
- swift_devices_and_proxy # provided by SwiftDevicesAndProxyConfig
- all_nodes # provided by allNodesConfig
@@ -265,6 +269,8 @@ resources:
- network
merge_behavior: deeper
datafiles:
+ service_configs:
+ mapped_data: {get_param: ServiceConfigSettings}
common:
raw_data: {get_file: hieradata/common.yaml}
network: