Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add release_stage and release_date to ActorDefinition table #10051

Merged
merged 9 commits into from
Feb 4, 2022

Conversation

pmossman
Copy link
Contributor

@pmossman pmossman commented Feb 4, 2022

What

Issue: #9711
Internal slack conversation with some more context: https://airbytehq-team.slack.com/archives/C02TL38U5L7/p1643247936054200

We want to mark connectors with different release stages (Alpha, Beta, Custom, Generally Available), and eventually want to mark new connectors with a 'New' badge.

This PR introduces release_date and release_stage as optional columns/fields on our connector definition table/schemas.

How

  • Write migration to add release_stage enum, release_stage column, and release_date column
  • Update json schemas to include these new fields
  • Update API handlers to surface new fields
  • Renamed create*Definition handler methods to createCustom*Definition because we now assume that any definition created via API should be marked with custom release_stage

Side note: I have another PR that adds a 'tombstone' column to actor_definition. Subodh informed me about upgrading the CONFIGS_DATABASE_MINIMUM_FLYWAY_MIGRATION_VERSION for cloud releases, so I will be sure to handle that for both of my PRs that introduce new columns. (I will bundle these two PRs as a single release and then release them to Cloud together).

Recommended reading order

  1. Migration file
  2. *.yaml schema changes
  3. *Handler.java changes
  4. the rest

馃毃 User Impact 馃毃

No user impact yet, this just introduces the columns and fields that will later be populated with release stage/date information through our connector seeds.

@github-actions github-actions bot added area/api Related to the api area/documentation Improvements or additions to documentation area/platform issues related to the platform area/server labels Feb 4, 2022
@pmossman pmossman changed the base branch from master to parker/set_tombstone_field_in_persistence February 4, 2022 01:40
Copy link
Contributor

@jrhizor jrhizor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor comments but looks good overall.

airbyte-api/src/main/openapi/config.yaml Show resolved Hide resolved
airbyte-api/src/main/openapi/config.yaml Show resolved Hide resolved
: Enums.toEnum(standardSourceDefinition.getReleaseStage().value(),
io.airbyte.db.instance.configs.jooq.enums.ReleaseStage.class).orElseThrow())
.set(ACTOR_DEFINITION.RELEASE_DATE, standardSourceDefinition.getReleaseDate() == null ? null
: LocalDate.parse(standardSourceDefinition.getReleaseDate().toString())) // TODO make sure this works
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this verified?

: Enums.toEnum(standardSourceDefinition.getReleaseStage().value(),
io.airbyte.db.instance.configs.jooq.enums.ReleaseStage.class).orElseThrow())
.set(ACTOR_DEFINITION.RELEASE_DATE, standardSourceDefinition.getReleaseDate() == null ? null
: LocalDate.parse(standardSourceDefinition.getReleaseDate().toString())) // TODO make sure this works
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as below

@pmossman pmossman temporarily deployed to more-secrets February 4, 2022 18:38 Inactive
@pmossman pmossman temporarily deployed to more-secrets February 4, 2022 18:54 Inactive
@pmossman pmossman force-pushed the parker/set_tombstone_field_in_persistence branch from eed18bb to 597a7d6 Compare February 4, 2022 19:18
Base automatically changed from parker/set_tombstone_field_in_persistence to master February 4, 2022 19:54
@pmossman pmossman force-pushed the parker/add-release-stage-to-connector-definition branch from 9c44768 to a556599 Compare February 4, 2022 19:59
@pmossman pmossman temporarily deployed to more-secrets February 4, 2022 20:01 Inactive
@pmossman pmossman temporarily deployed to more-secrets February 4, 2022 20:41 Inactive
@pmossman pmossman merged commit 5da1848 into master Feb 4, 2022
@pmossman pmossman deleted the parker/add-release-stage-to-connector-definition branch February 4, 2022 21:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/api Related to the api area/documentation Improvements or additions to documentation area/platform issues related to the platform area/server
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants