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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

connector base image: declare the base image package and implement #30303

Merged
merged 8 commits into from
Sep 22, 2023

Conversation

alafanechere
Copy link
Contributor

@alafanechere alafanechere commented Sep 11, 2023

Closes #30235
Closes #30240

What

We want to build a "framework" to declare versioned base images for our connectors.

Context:

Approach

  1. Declare a new poetry package under airbyte-ci/connectors/base_images
  2. Design and implement a framework to declare base image version in code (see README.md)
  3. Expose a poetry run cut-new-version command that will run sanity checks on base images and publish it.

Please note that no publish on merge automation has been implemented in this PR. I don't think its high priority given that we won't be cutting new images very often.

Next steps

#30233
#30236

TODO in this PR

  • Write more tests
  • Automatically run the test suite in the CI

🚨 User Impact 🚨

None, this package is not yet used.

@alafanechere alafanechere force-pushed the augustin/declare-first-base-image branch from 5a6f52f to ee6791f Compare September 11, 2023 17:13
@alafanechere alafanechere changed the title connector base image: declare the base image package and implement build connector base image: declare the base image package and implement Sep 11, 2023
@alafanechere alafanechere marked this pull request as ready for review September 11, 2023 17:28
@alafanechere alafanechere requested a review from a team September 11, 2023 17:28
raise common.SanityCheckError(f"missing environment variables: {missing_env_vars}")


class _0_1_0(AirbytePythonConnectorBaseImage):
Copy link
Contributor Author

Choose a reason for hiding this comment

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

TODO: add a check that patch version inherit from previous version

Comment on lines 93 to 98
async def run_sanity_checks(self):
await super().run_sanity_checks()
await self.check_python_version()
await self.check_pip_version()
await self.check_time_zone()
await self.check_bash_is_installed()
Copy link
Contributor Author

Choose a reason for hiding this comment

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

TODO: add docstring explaining this checks are from the results of our analysis

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Publish our python base images to DockerHub Declare the first python base image
3 participants