Skip to content

Commit

Permalink
Minor imprs
Browse files Browse the repository at this point in the history
  • Loading branch information
krystian-panek-vmltech committed Jan 2, 2023
1 parent e583320 commit 2c48ecf
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ class EnvOnPremScaffolder(private val launcher: Launcher) {
// ---
prop("aemQuickstartDistUrl") {
description("Typically AEM SDK zip file or AEM jar file")
description("Typically file named 'cq-quickstart-*.jar' AEM jar file")
}
prop("aemQuickstartLicenseUrl") {
description("Typically file named 'license.properties'")
Expand Down
13 changes: 7 additions & 6 deletions src/main/kotlin/com/cognifide/gradle/aem/common/CommonPlugin.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import com.cognifide.gradle.aem.AemPlugin
import com.cognifide.gradle.common.CommonDefaultPlugin
import org.gradle.api.Project
import org.gradle.api.plugins.BasePlugin
import org.gradle.api.tasks.testing.Test

/**
* Provides 'aem' extension to build script on which all other build logic is based.
Expand All @@ -15,12 +16,12 @@ class CommonPlugin : CommonDefaultPlugin() {
AemPlugin.apply { once { logger.info("Using: $NAME_WITH_VERSION") } }

plugins.apply(BasePlugin::class.java)
extensions.add(
AemExtension.NAME,
AemExtension(this).apply {
common.javaSupport.version.convention("11") // valid for instance creation and bundle compilation
}
)

val aem = AemExtension(this)
extensions.add(AemExtension.NAME, aem)

aem.common.javaSupport.version.convention("11") // valid for instance creation and bundle compilation
tasks.withType(Test::class.java) { it.javaLauncher.convention(aem.common.javaSupport.launcher) } // use same Java to launch AEM and to run tests on it
}

companion object {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package com.cognifide.gradle.aem.common.instance.local

enum class DistType {
SDK,
ON_PREM
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ class QuickstartResolver(private val manager: LocalInstanceManager) {

val distJar: File? get() = sdkJar ?: jar

val distType: DistType get() = when {
sdkJar != null -> DistType.SDK
else -> DistType.ON_PREM
}

/**
* URI pointing to AEM distribution (AEM SDK zip or AEM jar)
*/
Expand Down Expand Up @@ -75,12 +80,17 @@ class QuickstartResolver(private val manager: LocalInstanceManager) {
?.also { unpackSdkZip(it) }
?.let { sdkWorkDir.listFiles { name -> Patterns.wildcard(name, "*.jar") }?.firstOrNull() }

val sdkDispatcherDir: File? get() = sdkWorkDir.resolve("dispatcher")
val sdkDispatcherDir: File get() = sdkWorkDir.resolve("dispatcher")

val sdkDispatcherArch = aem.obj.string {
convention(aem.obj.provider { OSUtil.archOfHost() })
aem.prop.string("localInstance.quickstart.sdkDispatcherArch")?.let { set(it) }
}

val sdkDispatcherImage: File? get() = sdk
?.also { unpackSdkZip(it) }
?.also { unpackSdkDispatcher() }
?.let { sdkDispatcherDir?.resolve("lib/dispatcher-publish-${OSUtil.archOfHost()}.tar.gz")?.takeIf { it.exists() } }
?.let { sdkDispatcherDir.resolve("lib/dispatcher-publish-${sdkDispatcherArch.get()}.tar.gz").takeIf { it.exists() } }

private fun unpackSdkZip(zip: File) {
val versionCurrent = Formats.toChecksum(zip)
Expand Down Expand Up @@ -108,7 +118,7 @@ class QuickstartResolver(private val manager: LocalInstanceManager) {
sdkWorkDir.listFiles { _, name -> Patterns.wildcard(name, "*-dispatcher-*-unix.sh") }
?.firstOrNull()
?.let { script ->
sdkDispatcherDir?.takeIf { !it.exists() }?.let { dir ->
sdkDispatcherDir.takeIf { !it.exists() }?.let { dir ->
common.progress {
step = "Unpacking AEM SDK Dispatcher Tools: ${script.name} (${Formats.fileSize(script)})"
try {
Expand All @@ -128,7 +138,7 @@ class QuickstartResolver(private val manager: LocalInstanceManager) {
sdkWorkDir.listFiles { _, name -> Patterns.wildcard(name, "*-dispatcher-*-windows.zip") }
?.firstOrNull()
?.let { zip ->
sdkDispatcherDir?.takeIf { !it.exists() }?.let { dir ->
sdkDispatcherDir.takeIf { !it.exists() }?.let { dir ->
common.progress {
step = "Unpacking AEM SDK Dispatcher Tools: ${zip.name} (${Formats.fileSize(zip)})"
common.zip(zip).unpackAll(dir)
Expand Down

0 comments on commit 2c48ecf

Please sign in to comment.