From 54cbf0517c5dc36d5067d53fe1b282be60354231 Mon Sep 17 00:00:00 2001 From: Phil Barber Date: Tue, 29 Aug 2023 12:09:23 -0400 Subject: [PATCH] DEVEXP-427: Generate schemas database when running mlNewProject DEVEXP-427: Generate schemas database when running mlNewProject --- .../gradle/task/NewProjectTask.groovy | 25 ++++++------------- .../task/scaffold/GenerateScaffoldTask.groovy | 3 ++- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/src/main/groovy/com/marklogic/gradle/task/NewProjectTask.groovy b/src/main/groovy/com/marklogic/gradle/task/NewProjectTask.groovy index 78f8ea784..1e07dec2c 100644 --- a/src/main/groovy/com/marklogic/gradle/task/NewProjectTask.groovy +++ b/src/main/groovy/com/marklogic/gradle/task/NewProjectTask.groovy @@ -16,7 +16,6 @@ package com.marklogic.gradle.task import com.marklogic.appdeployer.scaffold.ScaffoldGenerator -import com.marklogic.gradle.task.MarkLogicTask import org.gradle.api.tasks.TaskAction class NewProjectTask extends MarkLogicTask { @@ -36,7 +35,7 @@ class NewProjectTask extends MarkLogicTask { ant.input(message: "Test REST API port (intended for running automated tests; leave blank for no server):", addproperty: "mlTestRestPort") } ant.input(message: "Do you want support for multiple environments? ", validargs: "y,n", addproperty: "mlPropertiesPlugin", defaultvalue: "y") - ant.input(message: "Do you want resource files for a content database and set of users/roles created?", validargs: "y,n", addproperty: "mlScaffold", defaultvalue: "y") + ant.input(message: "Do you want a set of users/roles created?", validargs: "y,n", addproperty: "mlScaffoldSecurity", defaultvalue: "y") def now = new Date() @@ -80,23 +79,13 @@ class NewProjectTask extends MarkLogicTask { makeDirectory("src/main/ml-config") makeDirectory("src/main/ml-modules") - if (ant.mlScaffold == "y") { - println "Writing project scaffolding files" - def appConfig = getAppConfig() - appConfig.setName(ant.mlAppName) - appConfig.setHost(ant.mlHost) - appConfig.setRestAdminUsername(ant.mlUsername) - appConfig.setRestAdminPassword(ant.mlPassword) - if (ant.mlRestPort) { - appConfig.setRestPort(Integer.parseInt(ant.mlRestPort)) - if (ant.mlTestRestPort) { - appConfig.setTestRestPort(Integer.parseInt(ant.mlTestRestPort)) - } - } else { - appConfig.setNoRestServer(true) - } - new ScaffoldGenerator().generateScaffold(getProject().getProjectDir().getAbsolutePath(), appConfig) + var scaffoldSecurity = (ant.mlScaffoldSecurity == "y") + var scaffoldRestServers = false + if (ant.mlRestPort) { + scaffoldRestServers = true } + ScaffoldGenerator.AppInputs appInputs = new ScaffoldGenerator.AppInputs(ant.mlAppName, scaffoldRestServers, scaffoldSecurity) + new ScaffoldGenerator().generateScaffold(getProject().getProjectDir().getAbsolutePath(), appInputs) } void makeDirectory(String path) { diff --git a/src/main/groovy/com/marklogic/gradle/task/scaffold/GenerateScaffoldTask.groovy b/src/main/groovy/com/marklogic/gradle/task/scaffold/GenerateScaffoldTask.groovy index 33f3f68f2..96bce0be5 100644 --- a/src/main/groovy/com/marklogic/gradle/task/scaffold/GenerateScaffoldTask.groovy +++ b/src/main/groovy/com/marklogic/gradle/task/scaffold/GenerateScaffoldTask.groovy @@ -27,6 +27,7 @@ class GenerateScaffoldTask extends MarkLogicTask { def propName = "scaffoldPath" def path = project.hasProperty(propName) ? project.property(propName) : getProject().getProjectDir().getAbsolutePath() println "Generating scaffold for path: " + path - g.generateScaffold(path, getAppConfig()) + ScaffoldGenerator.AppInputs appInputs = new ScaffoldGenerator.AppInputs(getAppConfig().getName()) + g.generateScaffold(path, appInputs) } }