You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[](https://gitter.im/bstopp/puppet-aem?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
40
42
41
43
#### Table of Contents
42
44
43
45
1.[Module Description - What does the module do?][Module Description]
44
46
1.[Setup - The basics of getting started with AEM module][Setup]
45
-
*[Setup Requirements][]
46
-
*[Beginning with AEM][]
47
+
*[Setup Requirements][]
48
+
*[Beginning with AEM][]
47
49
1.[Reference - AEM Module type and providers][Reference]
48
-
*[Public Defines][]
49
-
*[Private Defines][]
50
-
*[Private Types][]
50
+
*[Public Defines][]
51
+
*[Private Defines][]
52
+
*[Private Types][]
51
53
1.[Limitations - OS compatibility, etc.][Limitations]
52
54
1.[Development - Contributing to the module][Development]
53
55
@@ -92,7 +94,8 @@ For more options and detailed explanations, please see the [Puppet AEM Wiki][wik
@@ -116,10 +119,10 @@ See [Beginning with AEM][] for the minimum configuration required to create an A
116
119
Namevar. Required. Specifies the name of the AEM instance.
117
120
118
121
##### `ensure`
119
-
Optional. Changes the state of the AEM instance. Valid values are`present` or `absent`. Default: `present`.
122
+
Optional. Changes the state of the AEM instance. Valid options:`present` or `absent`. Default: `present`.
120
123
121
124
##### `context_root`
122
-
Optional. Specifies the URL context root for the AEM application. [Sling documentation][Sling launchpad]. Defaults to `/`.
125
+
Optional. Specifies the URL context root for the AEM application. [Sling documentation][Sling launchpad]. Valid options: any valid URI path. Defaults to `/`.
123
126
124
127
##### `debug_port`
125
128
Optional. Specifies the port on which to listen for remote debugging connections. Setting this will add the following JVM options: `-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=<<port>>` Valid options: any port number.
@@ -145,6 +148,9 @@ Optional. Sets whether or not this instance will manage the defined home directo
145
148
##### `manage_user`
146
149
Optional. Sets whether or not this instance will manage the defined user. Valid options: `true` or `false`. Default: `true`.
147
150
151
+
##### `osgi_configs`
152
+
Optional. Creates *file* type definitions of `aem::osgi::config` which will be applied prior to inital AEM start. Valid options: Hash or Array of Hash configurations.
153
+
148
154
##### `port`
149
155
Optional. Specifies the port on which AEM will listen. Valid options: any valid port. Default: 4502. [Sling documentation][Sling command-line-options]
150
156
@@ -177,7 +183,7 @@ Optional. Specifies the AEM installation type. Valid options: `author` or `publi
177
183
Optional. Sets the user for installation. Valid options: any valid user. Default: `aem`.
178
184
179
185
##### `version`
180
-
Optional. Sets the version of AEM. Informational only, does not affect installation or resource management. Valid options: any semantic version.
186
+
Optional. Sets the version of AEM. Informational only, does not affect installation or resource management. Valid options: any semantic version.
181
187
182
188
#### Define: `aem::license`
183
189
@@ -189,16 +195,16 @@ Manages an AEM License file. Provides a convenient tool for managing the license
189
195
Namevar. Required. Specifies the name of the AEM license.
190
196
191
197
##### `ensure`
192
-
Optional. Changes the state of the AEM license. Valid values are`present` or `absent`. Default: `present`.
198
+
Optional. Changes the state of the AEM license. Valid options:`present` or `absent`. Default: `present`.
193
199
194
200
##### `customer`
195
-
Optional. Specifies the customer name for the license file.
201
+
Optional. Specifies the customer name for the license file. Valid options: any string
196
202
197
203
##### `group`
198
204
Optional. Sets the group for file ownership. Valid options: any valid group. Default: `aem`.
199
205
200
206
##### `home`
201
-
Required. Sets the directory in which the license will be placed. Valid options: Any absolute path.
207
+
Required. Sets the directory in which the license will be placed. Valid options: any absolute path.
202
208
203
209
##### `license_key`
204
210
Required. Sets the license key for AEM. Valid options: any string.
@@ -228,7 +234,7 @@ Optional. Sets the group for file ownership. Valid options: any valid group. Def
228
234
Required. Sets the directory in which the AEM instance exists, necessary for service configuration definition. Valid options: Any absolute system path.
229
235
230
236
##### `status`
231
-
Optional. Changes the state of the service on the system, defining whether or not the service starts at system boot and/or is currently running. Valid values are:
237
+
Optional. Changes the state of the service on the system, defining whether or not the service starts at system boot and/or is currently running. Valid options:
232
238
*`enabled`: Start at boot & currently running (**Default**)
233
239
*`disabled`: Not started at boot & not currently running.
234
240
*`running`: Not started at boot but is currently running.
@@ -237,6 +243,42 @@ Optional. Changes the state of the service on the system, defining whether or no
237
243
##### `user`
238
244
Optional. Sets the user for for file ownership. Valid options: any valid user. Default: `aem`.
239
245
246
+
#### Define: `aem::osgi::config`
247
+
248
+
Manages an AEM OSGi Configuration; allows for saving Service/Component configurations via a file or posted to the Felix Web Console.
249
+
250
+
** Parameters within `aem::osgi::config`:**
251
+
252
+
##### `name`
253
+
Namevar. Required. Specifies the name of the AEM OSGi Configuration. This should be the Service PID. [Apache Felix Documentation][Felix Configuration]
254
+
255
+
##### `ensure`
256
+
Optional. Changes the state of the AEM OSGi configuration. A value of `absent` will delete the configuration. Valid options: `present` or `absent`. Default: `present`.
257
+
258
+
##### `group`
259
+
Optional. Sets the group for file ownership. Valid options: any valid group. Default: `aem`.
260
+
261
+
##### `handle_missing`
262
+
Required if **type** == `console`. Determine how to handle properties which are configured in the console, but not provided. See [wiki][wiki] for examples. Valid options: `merge` or `remove`.
263
+
264
+
##### `home`
265
+
Required. Sets the directory in which AEM exists. Valid options: Any absolute path.
266
+
267
+
##### `password`
268
+
Required if **type** == `console`. Sets the password of the OSGI console user. Valid options: any valid password.
269
+
270
+
##### `properties`
271
+
Required. Sets the configuration properties to persist. Valid options: a hash of values.
272
+
273
+
##### `type`
274
+
Required. Sets the means by which to persist the configuration. Valid options: `console` or `file`. `console` will use API calls to the OSGi Web Console. `file` will persist to a properties file in the *crx-quickstart/install* folder.
275
+
276
+
##### `user`
277
+
Optional. Sets the user for for file ownership. Valid options: any valid user. Default: `aem`.
278
+
279
+
##### `username`
280
+
Required if **type** == `console`. Sets the user for accessing the OSGI console. Valid options: any valid user.
281
+
240
282
### Private Defines
241
283
242
284
#### Define: `aem::package`
@@ -245,19 +287,25 @@ This define unpacks the AEM Quickstart jar for prepartion to configure.
245
287
#### Define: `aem::config`
246
288
This define sets up the start templates to ensure the AEM instance executes with the correct state.
247
289
290
+
#### Define: `aem::osgi::config::file`
291
+
This define is used to manage OSGi Configurations which are of type `file`.
292
+
248
293
### Private Types
249
294
250
-
#### Type: `aem::aem_installer`
295
+
#### Type: `aem_installer`
251
296
This custom type starts the AEM instance to create the base repository, monitors for it's initalization, then shuts the system down.
252
297
298
+
#### Type: `aem_osgi_config`
299
+
This custom type manages OSGi Configurations which are of type `console`.
300
+
253
301
## Limitations
254
302
255
303
### OS Compatibility
256
304
257
305
This module has been tested on:
258
306
259
307
- CentOS 7, 7.2
260
-
- Ubuntu 12.04, 14.04
308
+
- Ubuntu 12.04*, 14.04
261
309
- Debian 7.8*, 8.2
262
310
263
311
*See [Known Issues][]*
@@ -269,6 +317,10 @@ This module has been tested with the following AEM versions:
269
317
- 6.0
270
318
- 6.1
271
319
320
+
### Minimum Ruby Requirement
321
+
322
+
Using the OSGi Configuration options require a Minimum ruby version of 1.9.x.
323
+
272
324
### Warnings
273
325
274
326
It is up to the consumer to ensure that the correct version of Java is installed based on the AEM version. See [AEM Documentation][AEM Java Requirements] for compatibility.
@@ -277,6 +329,8 @@ Defining an AEM resource as absent will remove the instance from the system, reg
277
329
278
330
### Known Issues
279
331
332
+
Ubuntu 12.04 ships with Ruby 1.8.x; therefore the OSGi configurations acceptance tests fail.
333
+
280
334
There is an oddity with the `aem::service` support on Debian: even though specifying a valid status sends the correct parameters to the underlying service resource, the service is not enabled, nor do state changes occur correctly. Acceptance tests on those Virtual Machines fail for issues with service management. See [issue #36](https://github.com/bstopp/puppet-aem/issues/36).
0 commit comments