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
*`downloadSftpAuth(url: String)`, as above, but credentials must be specified in variables: `aem.sftp.username`, `aem.sftp.password`. Optionally enable strict host checking by setting property `aem.sftp.hostChecking` to `true`.
483
496
*`dependency(notation: String)`, use OSGi bundle that will be resolved from defined repositories (for instance from Maven) then wrapped to CRX package: `dependency('com.neva.felix:search-webconsole-plugin:1.2.0')`.
484
-
*`group(name: String, configurer: Closure)`, useful for declaring group of packages (or just naming single package) to be installed only on demand. For instance: `group 'tools', { url('http://example.com/package.zip'); url('smb://internal-nt/package2.zip') }`. Then to install only packages in group `tools`, use command: `gradlew aemSatisfy -Paem.satisfy.group=tools`.
497
+
*`group(name: String, configurer: Closure)`, useful for declaring group of packages (or just optionally naming single package) to be installed only on demand. For instance: `group 'tools', { url('http://example.com/package.zip'); url('smb://internal-nt/package2.zip') }`. Then to install only packages in group `tools`, use command: `gradlew aemSatisfy -Paem.satisfy.group=tools`.
498
+
499
+
It is also possible to specify packages to be deployed only once via command line parameter. Also for local files at any file system paths.
`awaitStableInterval` | *aem.await.interval* | `1000` | Time in milliseconds used as interval between next instance stability checks being performed. Optimization could be necessary only when instance is heavily loaded.
517
+
`awaitStableInterval` | *aem.await.stable.interval* | `1000` | Time in milliseconds used as interval between next instance stability checks being performed. Optimization could be necessary only when instance is heavily loaded.
493
518
`awaitStableTimeout` | *aem.await.stable.timeout* | `900` | After each await interval, instance stability check is being performed. This value is a HTTP connection timeout (in millis) which must be smaller than interval to avoid race condition.
494
519
`awaitStableTimes` | *aem.await.stable.times* | `300` | Maximum intervals after which instance stability checks will be skipped if there is still some unstable instance left.
495
520
`awaitStableAssurances` | *aem.await.stable.assurances* | `3L` | Number of intervals / additional instance stability checks to assure all stable instances.
496
521
`awaitStableCheck` | n/a | `{ it.checkBundleStable(500) }` | Hook for customizing instance stability check. Check will be repeated if assurance is configured.
497
-
`awaitHealthCheck` | n/a | { `it.checkComponentState(awaitHealthComponentsActive) }` | Hook for customizing instance health check.
522
+
`awaitHealthCheck` | n/a | { `it.checkComponentState(10000) }` | Hook for customizing instance health check.
498
523
`awaitFast` | *aem.await.fast* | `false` | Skip stable check assurances and health checking. Alternative, quicker type of awaiting stable instances.
499
524
`awaitFastDelay` | *aem.await.fast.delay* | `1000` | Time in milliseconds to postpone instance stability checks to avoid race condition related with actual operation being performed on AEM like starting JCR package installation or even creating launchpad.
500
525
`awaitResume` | *aem.await.resume* | `false` | Do not fail build but log warning when there is still some unstable or unhealthy instance.
@@ -558,27 +583,27 @@ allprojects { subproject ->
558
583
plugins.withId 'com.cognifide.aem.base', {
559
584
aem {
560
585
config {
561
-
localInstance "http://localhost:6502"
586
+
remoteInstance "http://localhost:6502"
562
587
contentPath = subproject.file("src/main/aem")
563
588
}
564
589
}
565
590
}
566
591
}
567
592
```
568
593
569
-
Project `:app` specific configuration like CRX package options should be defined in `app/build.gradle`:
594
+
For instance, project `:app:core` specific configuration like OSGi bundle or CRX package options should be defined in `app/core/build.gradle`:
570
595
571
596
```groovy
572
597
aem {
573
598
config {
574
-
contentPath = project.file("src/main/aem")
599
+
bundlePackage = 'com.company.aem.example.core'
575
600
}
576
601
}
577
602
578
603
aemCompose {
579
-
baseName = 'company-example'
604
+
includeProjects ':content:*'
605
+
baseName = 'example-core'
580
606
duplicatesStrategy = "EXCLUDE"
581
-
includeProject ':app:core'
582
607
}
583
608
```
584
609
@@ -640,6 +665,17 @@ aem {
640
665
}
641
666
```
642
667
668
+
The above configuration can be also specified through *gradle.properties* file using dedicated syntax.
`$TYPE_NAME` | `author`, `publish`, `publish2`, etc | Combination of AEM instance type and semantic suffix useful when more than one of instance of same type is being configured. |
677
+
`$PROP_NAME=$PROP_VALUE` | Local instances: `httpUrl=http://admin:admin@localhost:4502`, `password=foo`, `runModes=nosamplecontent`, `jvmOpts=-server -Xmx2048m -XX:MaxPermSize=512M -Djava.awt.headless=true`, `startOpts=...`, `debugPort=24502`. Remote instances: `httpUrl`, `user`, `password`. | Run modes, JVM opts and start opts should be comma delimited. |
678
+
643
679
**Rules:**
644
680
645
681
* Instance name is a combination of *${environment}-${typeName}* e.g *local-author*, *integration-publish* etc.
0 commit comments