* WIP Convert airbyte-workers to Micronaut framework * Rebase cleanup * Fix broken tests * Simplify code * Support control vs data plane configuration * make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests * Formatting * Pairing on Worker Micronaut (#16364) * add RouteToSyncTaskQueue activity * use new route activity in connection manager workflow * format * call router service for task queue * Revert temporal proxy changes * Formatting * Fix default value * register new route activity in test * fix SyncWorkflowTest now that it isn't doing any routing * Update dependencies * More dependency updates * Update dependencies * WIP Convert airbyte-workers to Micronaut framework * Rebase cleanup * Fix broken tests * Simplify code * Support control vs data plane configuration * make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests * Formatting * Pairing on Worker Micronaut (#16364) * add RouteToSyncTaskQueue activity * use new route activity in connection manager workflow * format * call router service for task queue * Revert temporal proxy changes * Formatting * Fix default value * register new route activity in test * fix SyncWorkflowTest now that it isn't doing any routing * Update dependencies * More dependency updates * Update dependencies * WIP Convert airbyte-workers to Micronaut framework * Rebase cleanup * Fix broken tests * Simplify code * Support control vs data plane configuration * make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests * Formatting * Pairing on Worker Micronaut (#16364) * add RouteToSyncTaskQueue activity * use new route activity in connection manager workflow * format * call router service for task queue * Revert temporal proxy changes * Formatting * Fix default value * register new route activity in test * fix SyncWorkflowTest now that it isn't doing any routing * Update dependencies * More dependency updates * Update dependencies * Add the injected temporal client to airbyte-cron * Update cron to make it work * Remove useless Bean factory * PR comments * WIP Convert airbyte-workers to Micronaut framework * Rebase cleanup * Fix broken tests * Simplify code * Support control vs data plane configuration * make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests * Formatting * Pairing on Worker Micronaut (#16364) * add RouteToSyncTaskQueue activity * use new route activity in connection manager workflow * format * call router service for task queue * Revert temporal proxy changes * Formatting * Fix default value * register new route activity in test * fix SyncWorkflowTest now that it isn't doing any routing * Update dependencies * More dependency updates * Update dependencies * Improve conditional bean check * Match existing Optional functionality * Add notEquals check * Add missing env var to Helm chart * Fix typo * Mark LogConfigs as Singleton * WIP Convert airbyte-workers to Micronaut framework * Rebase cleanup * Fix broken tests * Simplify code * Support control vs data plane configuration * make WORFKLOW_PROXY_CACHE non-static to avoid cacheing mocks in unit tests * Formatting * Pairing on Worker Micronaut (#16364) * add RouteToSyncTaskQueue activity * use new route activity in connection manager workflow * format * call router service for task queue * Revert temporal proxy changes * Formatting * Fix default value * register new route activity in test * fix SyncWorkflowTest now that it isn't doing any routing * Update dependencies * More dependency updates * Update dependencies * Improve conditional bean check * Match existing Optional functionality * Add notEquals check * Add missing env var to Helm chart * Fix typo * Mark LogConfigs as Singleton * Env vars for log/state storage type * Remove use of Optional in bean declarations * Fix typo in config property name * Support Temporal Cloud namespace * Change to @Value * Use correct value for conditional check * Upgrade Micronaut * Fix merge conflict * Formatting * Add missing env var * Use sync task queue environment variable * Handle sync task queue as set * format and force http * Handle case where sync task queue is empty * Add correct path to config property * Remove unused import * Remove conflict * Remove unused parameter * Formatting * Use pattern for condition process factory beans * Cleanup * PR feedback * Revert hack for testing * Fix temporal restart by status (#16447) * Update application.yml * Re add worker dep * Add missing env var * PR comments * Bmoric/move temporal client (#16778) * tmp * tmp * View diff * Move part of the temporal client * tmp * copy Temporal Utils test * Uniq Temporal Utils * Uniq Temporal Workflow Utils * Move CancellationHandler * Move commons-temporal to being shared between platform, connector and CLI * Rm worker dependency from cron * Fix build * Update with right value for cron. * Fix dep conflict Co-authored-by: jdpgrailsdev <jpearlin1@gmail.com> Co-authored-by: pmossman <parker@airbyte.io> Co-authored-by: Jonathan Pearlin <jonathan@airbyte.io>
134 lines
4.5 KiB
Groovy
134 lines
4.5 KiB
Groovy
import org.jsonschema2pojo.SourceType
|
|
|
|
plugins {
|
|
id 'application'
|
|
id 'com.github.eirnym.js2p' version '1.0'
|
|
id 'airbyte-integration-test-java'
|
|
}
|
|
|
|
configurations {
|
|
jdbc
|
|
}
|
|
|
|
dependencies {
|
|
annotationProcessor platform(libs.micronaut.bom)
|
|
annotationProcessor libs.bundles.micronaut.annotation.processor
|
|
|
|
implementation platform(libs.micronaut.bom)
|
|
implementation libs.bundles.micronaut
|
|
|
|
// Ensure that the versions defined in deps.toml are used
|
|
// instead of versions from transitive dependencies
|
|
implementation (libs.flyway.core) {
|
|
force = true
|
|
}
|
|
implementation (libs.jooq) {
|
|
force = true
|
|
}
|
|
|
|
implementation 'com.google.auth:google-auth-library-oauth2-http:1.4.0'
|
|
implementation 'com.auth0:java-jwt:3.19.2'
|
|
implementation 'io.fabric8:kubernetes-client:5.12.2'
|
|
implementation 'io.temporal:temporal-sdk:1.8.1'
|
|
implementation 'org.apache.ant:ant:1.10.10'
|
|
implementation 'org.apache.commons:commons-lang3:3.11'
|
|
implementation 'org.apache.commons:commons-text:1.9'
|
|
implementation 'org.quartz-scheduler:quartz:2.3.2'
|
|
implementation libs.micrometer.statsd
|
|
implementation 'io.sentry:sentry:6.3.1'
|
|
implementation 'net.bytebuddy:byte-buddy:1.12.14'
|
|
implementation 'org.springframework:spring-core:5.3.22'
|
|
|
|
implementation project(':airbyte-analytics')
|
|
implementation project(':airbyte-api')
|
|
implementation project(':airbyte-commons-docker')
|
|
implementation project(':airbyte-commons-temporal')
|
|
implementation project(':airbyte-config:config-models')
|
|
implementation project(':airbyte-config:config-persistence')
|
|
implementation project(':airbyte-db:jooq')
|
|
implementation project(':airbyte-db:db-lib')
|
|
implementation project(':airbyte-metrics:metrics-lib')
|
|
implementation project(':airbyte-json-validation')
|
|
implementation project(':airbyte-protocol:protocol-models')
|
|
implementation (project(':airbyte-persistence:job-persistence')) {
|
|
// Temporary hack to avoid dependency conflicts
|
|
exclude group: 'io.micronaut'
|
|
exclude group: 'io.micronaut.flyway'
|
|
exclude group: 'io.micronaut.jaxrs'
|
|
exclude group: 'io.micronaut.security'
|
|
exclude group: 'io.micronaut.sql'
|
|
}
|
|
implementation project(':airbyte-api')
|
|
|
|
testAnnotationProcessor platform(libs.micronaut.bom)
|
|
testAnnotationProcessor libs.bundles.micronaut.test.annotation.processor
|
|
|
|
integrationTestJavaAnnotationProcessor platform(libs.micronaut.bom)
|
|
integrationTestJavaAnnotationProcessor libs.bundles.micronaut.test.annotation.processor
|
|
|
|
testImplementation libs.bundles.micronaut.test
|
|
testImplementation 'io.temporal:temporal-testing:1.8.1'
|
|
testImplementation 'com.jayway.jsonpath:json-path:2.7.0'
|
|
testImplementation 'org.mockito:mockito-inline:4.7.0'
|
|
testImplementation libs.postgresql
|
|
testImplementation libs.platform.testcontainers
|
|
testImplementation libs.platform.testcontainers.postgresql
|
|
|
|
testImplementation project(':airbyte-commons-docker')
|
|
testImplementation project(':airbyte-test-utils')
|
|
|
|
integrationTestJavaImplementation project(':airbyte-workers')
|
|
integrationTestJavaImplementation libs.bundles.micronaut.test
|
|
}
|
|
|
|
jsonSchema2Pojo {
|
|
sourceType = SourceType.YAMLSCHEMA
|
|
source = files("${sourceSets.main.output.resourcesDir}/workers_models")
|
|
targetDirectory = new File(project.buildDir, 'generated/src/gen/java/')
|
|
removeOldOutput = true
|
|
|
|
targetPackage = 'io.airbyte.persistence.job.models'
|
|
|
|
useLongIntegers = true
|
|
generateBuilders = true
|
|
includeConstructors = false
|
|
includeSetters = true
|
|
}
|
|
|
|
mainClassName = 'io.airbyte.workers.Application'
|
|
|
|
application {
|
|
applicationName = project.name
|
|
mainClass = mainClassName
|
|
applicationDefaultJvmArgs = ['-XX:+ExitOnOutOfMemoryError', '-XX:MaxRAMPercentage=75.0']
|
|
}
|
|
|
|
Properties env = new Properties()
|
|
rootProject.file('.env.dev').withInputStream { env.load(it) }
|
|
|
|
run {
|
|
// default for running on local machine.
|
|
env.each { entry ->
|
|
environment entry.getKey(), entry.getValue()
|
|
}
|
|
|
|
environment 'AIRBYTE_ROLE', System.getenv('AIRBYTE_ROLE')
|
|
environment 'AIRBYTE_VERSION', env.VERSION
|
|
environment 'MICRONAUT_ENVIRONMENTS', 'local,control'
|
|
}
|
|
|
|
task cloudStorageIntegrationTest(type: Test) {
|
|
useJUnitPlatform {
|
|
includeTags cloudStorageTestTagName
|
|
}
|
|
testLogging {
|
|
events "passed", "skipped", "failed"
|
|
}
|
|
}
|
|
|
|
tasks.named("buildDockerImage") {
|
|
dependsOn copyGeneratedTar
|
|
}
|
|
|
|
Task publishArtifactsTask = getPublishArtifactsTask("$rootProject.ext.version", project)
|