Skip to content

Commit e361a18

Browse files
committed
add dataConnect.minimalApp.dataConnectEmulatorExecutable
1 parent 1f35e12 commit e361a18

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

firebase-dataconnect/demo/build.gradle.kts

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,13 @@ dokka {
6161
moduleName.set("Data Connect Demo")
6262
dokkaSourceSets.main {
6363
sourceRoots.from(layout.buildDirectory.dir("dataConnect/generatedSources/").get())
64+
includes.from(
65+
layout.buildDirectory
66+
.dir(
67+
"dataConnect/generatedSources/com/google/firebase/dataconnect/minimaldemo/connector/README.md"
68+
)
69+
.get()
70+
)
6471
}
6572
}
6673

@@ -133,6 +140,11 @@ abstract class DataConnectGenerateSourcesTask : DefaultTask() {
133140

134141
@get:Input @get:Optional abstract val nodeExecutableDirectory: Property<String>
135142

143+
@get:InputFile
144+
@get:Optional
145+
@get:PathSensitive(PathSensitivity.ABSOLUTE)
146+
abstract val dataConnectEmulatorExecutable: RegularFileProperty
147+
136148
@get:OutputDirectory abstract val outputDirectory: DirectoryProperty
137149

138150
@get:Internal abstract val workDirectory: DirectoryProperty
@@ -149,13 +161,15 @@ abstract class DataConnectGenerateSourcesTask : DefaultTask() {
149161
val firebaseToolsVersion: String = firebaseToolsVersion.get()
150162
val firebaseCommand: String = firebaseCommand.get()
151163
val nodeExecutableDirectory: String? = nodeExecutableDirectory.orNull
164+
val dataConnectEmulatorExecutable: File? = dataConnectEmulatorExecutable.orNull?.asFile
152165
val outputDirectory: File = outputDirectory.get().asFile
153166
val workDirectory: File = workDirectory.get().asFile
154167

155168
logger.info("inputDirectory: {}", inputDirectory.absolutePath)
156169
logger.info("firebaseToolsVersion: {}", firebaseToolsVersion)
157170
logger.info("firebaseCommand: {}", firebaseCommand)
158171
logger.info("nodeExecutableDirectory: {}", nodeExecutableDirectory)
172+
logger.info("dataConnectEmulatorExecutable: {}", dataConnectEmulatorExecutable)
159173
logger.info("outputDirectory: {}", outputDirectory.absolutePath)
160174
logger.info("workDirectory: {}", workDirectory.absolutePath)
161175

@@ -179,6 +193,7 @@ abstract class DataConnectGenerateSourcesTask : DefaultTask() {
179193
this,
180194
firebaseCommand = firebaseCommand,
181195
nodeExecutableDirectory = nodeExecutableDirectory,
196+
dataConnectEmulatorExecutable = dataConnectEmulatorExecutable,
182197
path = providerFactory.environmentVariable("PATH").orNull,
183198
)
184199
args("--debug", "dataconnect:sdk:generate")
@@ -206,6 +221,7 @@ abstract class DataConnectGenerateSourcesTask : DefaultTask() {
206221
execSpec: ExecSpec,
207222
firebaseCommand: String,
208223
nodeExecutableDirectory: String?,
224+
dataConnectEmulatorExecutable: File?,
209225
path: String?,
210226
) {
211227
execSpec.setCommandLine(firebaseCommand)
@@ -224,6 +240,10 @@ abstract class DataConnectGenerateSourcesTask : DefaultTask() {
224240
if (newPath !== null) {
225241
execSpec.environment("PATH", newPath)
226242
}
243+
244+
if (dataConnectEmulatorExecutable !== null) {
245+
execSpec.environment("DATACONNECT_EMULATOR_BINARY_PATH", dataConnectEmulatorExecutable)
246+
}
227247
}
228248
}
229249
}
@@ -282,6 +302,11 @@ run {
282302
projectDirectory.dir(it).asFile.absolutePath
283303
}
284304

305+
dataConnectEmulatorExecutable =
306+
project.providers
307+
.gradleProperty("dataConnect.minimalApp.dataConnectEmulatorExecutable")
308+
.map { projectDirectory.file(it) }
309+
285310
val path = providers.environmentVariable("PATH")
286311
firebaseToolsVersion =
287312
providers
@@ -290,6 +315,7 @@ run {
290315
this,
291316
firebaseCommand = firebaseCommand.get(),
292317
nodeExecutableDirectory = nodeExecutableDirectory.orNull,
318+
dataConnectEmulatorExecutable = dataConnectEmulatorExecutable.orNull?.asFile,
293319
path = path.orNull,
294320
)
295321
args("--version")

0 commit comments

Comments
 (0)