Skip to content

Commit cf6fb99

Browse files
author
Marius Posta
authoredJan 21, 2025
gradle: improve settings.gradle for use with airbyte-enterprise (#52062)
1 parent f2dcd21 commit cf6fb99

File tree

1 file changed

+22
-30
lines changed

1 file changed

+22
-30
lines changed
 

‎settings.gradle

+22-30
Original file line numberDiff line numberDiff line change
@@ -138,46 +138,38 @@ if (isCI) {
138138

139139
rootProject.name = 'airbyte'
140140

141-
// Include all java CDK modules.
142-
def cdkPath = rootDir.toPath().resolve('airbyte-cdk/java/airbyte-cdk')
143-
if (cdkPath.toFile().exists()) {
144-
cdkPath.eachDir { dir ->
145-
def buildFiles = file(dir).list { file, name -> name.matches("build\\.gradle(?:\\.kts)?") }
146-
if (buildFiles.length == 1) {
147-
def path = ":airbyte-cdk:java:airbyte-cdk:${dir.getFileName()}"
148-
include path
149-
project(path).name = "airbyte-cdk-${dir.getFileName()}"
150-
}
151-
}
141+
boolean hasGradleBuildFile(java.nio.file.Path path) {
142+
def buildFiles = file(path).list { file, name -> name.matches("build\\.gradle(?:\\.kts)?") }
143+
return buildFiles.length == 1
152144
}
153-
def bulkCdkCorePath = rootDir.toPath().resolve('airbyte-cdk/bulk/core')
154-
if (bulkCdkCorePath.toFile().exists()) {
155-
bulkCdkCorePath.eachDir { dir ->
156-
def buildFiles = file(dir).list { file, name -> name.matches("build\\.gradle(?:\\.kts)?") }
157-
if (buildFiles.length == 1) {
158-
def path = ":airbyte-cdk:bulk:core:${dir.getFileName()}"
159-
include path
160-
project(path).name = "bulk-cdk-core-${dir.getFileName()}"
145+
146+
void includeCdkProjects(String dir, String gradlePathPrefix, String projectNamePrefix) {
147+
def path = rootDir.toPath().resolve(dir)
148+
if (!path.toFile().exists()) {
149+
path = rootDir.toPath().resolve("airbyte-submodule").resolve(dir)
150+
if (!path.toFile().exists()) {
151+
return
161152
}
162153
}
163-
}
164-
def bulkCdkToolkitPath = rootDir.toPath().resolve('airbyte-cdk/bulk/toolkits')
165-
if (bulkCdkToolkitPath.toFile().exists()) {
166-
bulkCdkToolkitPath.eachDir { dir ->
167-
def buildFiles = file(dir).list { file, name -> name.matches("build\\.gradle(?:\\.kts)?") }
168-
if (buildFiles.length == 1) {
169-
def path = ":airbyte-cdk:bulk:toolkits:${dir.getFileName()}"
170-
include path
171-
project(path).name = "bulk-cdk-toolkit-${dir.getFileName()}"
154+
path.eachDir { subDir ->
155+
if (!hasGradleBuildFile(subDir)) {
156+
return
172157
}
158+
String gradlePath = gradlePathPrefix + subDir.getFileName()
159+
include gradlePath
160+
project(gradlePath).name = projectNamePrefix + subDir.getFileName()
173161
}
174162
}
175163

164+
// Include all java CDK modules.
165+
includeCdkProjects("airbyte-cdk/java/airbyte-cdk", ":airbyte-cdk:java:airbyte-cdk:", "airbyte-cdk-")
166+
includeCdkProjects("airbyte-cdk/bulk/core", ":airbyte-cdk:bulk:core:", "bulk-cdk-core-")
167+
includeCdkProjects("airbyte-cdk/bulk/toolkits", ":airbyte-cdk:bulk:toolkits:", "bulk-cdk-toolkit-")
168+
176169
// Include all java connector projects.
177170
def integrationsPath = rootDir.toPath().resolve('airbyte-integrations/connectors')
178171
integrationsPath.eachDir { dir ->
179-
def buildFiles = file(dir).list { file, name -> name.matches("build\\.gradle(?:\\.kts)?") }
180-
if (buildFiles.length != 1) {
172+
if (!hasGradleBuildFile(dir)) {
181173
// Ignore python and other non-gradle connectors.
182174
return
183175
}

0 commit comments

Comments
 (0)