-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
gradle: search for python3.11 binary for AL2023 support #31227
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 1 Ignored Deployment
|
Testing on source-mysql here: https://github.com/airbytehq/airbyte/actions/runs/6473740068 edit: it works |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple comments. Bordering on should address. But Im all for unblocking now and fixing up after
try { | ||
if ("python3.11 --version".execute().waitFor() == 0) { | ||
// python3.11 definitely exists at this point, use it instead of 'python3'. | ||
pythonBinary "python3.11" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❓why cant we bind python
to python3.11
at the container level?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@@ -80,6 +80,15 @@ class AirbytePythonPlugin implements Plugin<Project> { | |||
envPath = venvDirectoryName | |||
minPythonVersion '3.10' | |||
|
|||
// Amazon Linux support. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📚 could use some elaboration on why we do this instead of just run python.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fair!
@@ -90,7 +90,7 @@ async def _run(self) -> StepResult: | |||
"findutils", # gradle requires xargs, which is shipped in findutils. | |||
"jq", # required by :airbyte-connector-test-harnesses:acceptance-test-harness to inspect docker images. | |||
"npm", # required by :format. | |||
"pip", # required by :format. | |||
"python3.11-pip", # required by :format. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
❗some tools (ci_credentials, pipelines) cant currently support python3.11, this wont be an issue here but is an edge case. is python 3.10 available instead?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For some reason that I don't understand, no. If it comes to that, it'll probably be simpler to change the base container to something other than amazoncorretto. I only picked it because openjdk was no longer maintained and amazoncorretto has LTS.
I broke airbyte-ci last week for all java connectors by making version 3.10+ a requirement for python in gradle. This PR fixes this by installing and using python3.11 in the amazoncorretto-based gradle containers. Under the hood, it's Amazon Linux 2023, which comes with python 3.9 by default.