1
0
mirror of synced 2026-01-14 03:04:49 -05:00
Files
airbyte/airbyte-cdk/python/build.gradle
Maxime Carbonneau-Leclerc 1fdaa1d074 [ISSUE #20044] generate pydantic models from handwritten schema (#20475)
* handwritten low code manifest example components

* add MinMaxDatetime to jsonschema

* add a basic gradle command to generate manifest components

* Add auth components to handwritten component schema

- ApiKeyAuthenticator
- BasicHttpAuthenticator
- BearerAuthenticator
- DeclarativeOauth2Authenticator
- NoAuth

* Respect optional properties in DeclarativeOauth2Authenticator

* Fix `Dict[str, Any]` mapping in auth components

* add default error handler composite error handler and http response filter components

* [low code component schema] adding backoff strategies to schema

* [low code component schema] fix float types

* [low code component schema] add RecordFilter

* Remove `config` from auth components

* [low code component schema] add Interpolation (with pending question on 'type' not being defined)

* Add CartesianProductStreamSlicer & DatetimeStreamSlicer

* Add ListStreamSlicer, and fix nesting of DatetimeStreamSlicer

* [low code component schema] add InterpolatedRequestOptionsProvider

* Add slicer components, and fix a couple of components after reviewing output

* [low code component schema] adding transformations and adding type to interpolators

* adding spec and a few small tweaks

* Add DefaultSchemaLoader

* [low code component schema] attempt on custom class

* Add descriptions for auth components

* add RequestOption

* remove interpolated objects from the schema in favor of strings only

* a few schema fixes and adding some custom pagination and stream slicer

* [low code component schema] fix CustomBackoffStrategy

* Add CustomRecordExtractor

* add some description and add additional properties

* insert a transformer to hydrate default manifest components and perform validation against the handwritten schema

* [low code component schema] validating existing schemas

* [low code component schema] clean validation script

* add manifest transformer tests and a few tweaks to the schema

* Revert "[low code component schema] clean validation script"

This reverts commit 2408f41cf6.

* Revert "[low code component schema] validating existing schemas"

This reverts commit 9d39977815.

* [low code component schema] integrate validation script to gradle

* [low code component schema] updating validation script permissions

* remove a few model gen spike files and clean up comments

* default types should take parent type into account and a few schema changes

* [ISSUE #20044] generate pydantic models from handwritten schema

* [ISSUE #20044] code review

* [ISSUE #20044] re-generating declarative component schema files

Co-authored-by: brianjlai <brian.lai@airbyte.io>
Co-authored-by: Catherine Noll <noll.catherine@gmail.com>
2022-12-20 16:53:35 -06:00

36 lines
1.1 KiB
Groovy

plugins {
id 'airbyte-python'
id 'airbyte-docker'
}
airbytePython {
moduleDirectory 'airbyte_cdk'
}
task generateProtocolClassFiles(type: Exec) {
environment 'ROOT_DIR', rootDir.absolutePath
commandLine 'bin/generate-protocol-files.sh'
dependsOn ':tools:code-generator:airbyteDocker'
}
task generateComponentManifestClassFiles(type: Exec) {
environment 'ROOT_DIR', rootDir.absolutePath
commandLine 'bin/generate-component-manifest-files.sh'
dependsOn ':tools:code-generator:airbyteDocker'
}
task validateSourceYamlManifest(type: Exec) {
environment 'ROOT_DIR', rootDir.absolutePath
commandLine 'bin/validate-yaml-schema.sh'
}
blackFormat.dependsOn generateProtocolClassFiles
isortFormat.dependsOn generateProtocolClassFiles
flakeCheck.dependsOn generateProtocolClassFiles
installReqs.dependsOn generateProtocolClassFiles
blackFormat.dependsOn generateComponentManifestClassFiles
isortFormat.dependsOn generateComponentManifestClassFiles
flakeCheck.dependsOn generateComponentManifestClassFiles
installReqs.dependsOn generateComponentManifestClassFiles