wttech / gradle-aem-plugin

Swiss army knife for Adobe Experience Manager related automation. Environment setup & incremental AEM application build which takes seconds, not minutes.
https://tech.cognifide.com/tag/gradle-aem-plugin
Apache License 2.0
157 stars 32 forks source link

aem.deploy.distributed doesn't work on satisfying url from command line #273

Closed lopesdasilva closed 5 years ago

lopesdasilva commented 5 years ago

I'm currently trying to use this feature with "-Paem.satisfy.urls=[url1,ulr2]" but for some reason it's not replicating, should this be supported?

the command im running: ./gradlew aemSatisfy -Paem.deploy.distributed=true -Paem.instance.list=$aemhost -Paem.satisfy.urls=[$url_app,$url_content]

Originally posted by @lopesdasilva in https://github.com/Cognifide/gradle-aem-plugin/pull/115#issuecomment-444156811

pun-ky commented 5 years ago

I think that when you specify instance via aem.instance.list it is not possible to determine which one is an author instance from which packages could be activated to publishers. (plugin has treated your aem host as publish instance)

if your instance list contains hosts with ports specified, convention will consider instance with port ending with *02 as author instance, the rest as publishers.

what you could do alternatively is to define instance via special properties syntax in which type of instance if taken from property key, see:

https://github.com/Cognifide/gradle-aem-plugin#work-with-local-andor-remote-aem-instances

The above configuration can be also specified through gradle.properties file using dedicated syntax (recommended approach).

aem.instance.$TYPE.$ENVIRONMENT-$TYPE_NAME.$PROP_NAME=$PROP_VALUE

then after specifying instance using that syntax try with

sh gradlew aemSatisfy -Paem.satisfy.urls=[...] -Paem.instance.remote.cmd-author.httpUrl=$aemhost -Paem.instance.author.name=cmd-author

see related code: https://github.com/Cognifide/gradle-aem-plugin/blob/master/src/main/kotlin/com/cognifide/gradle/aem/instance/satisfy/PackageGroup.kt#L28

feel free to reopen if needed. hope helped, greetings, Krystian.

lopesdasilva commented 5 years ago

Should this be enough to say it's a author instance? -Paem.instance.list=$aemhost,AUTHOR,$AEM_DEV_CREDENTIALS_USR,$AEM_DEV_CREDENTIALS_PSW

pun-ky commented 5 years ago

as I remember yes, you are using old deprecated syntax. this will be no longer available in 6.x