potiuk commented on PR #34804: URL: https://github.com/apache/airflow/pull/34804#issuecomment-1811692634
> Actually, this is not fixed in python versions prior to 3.9 on arm64. > > For example try to install `tzlocal` on `apache/airflow:2.3.4-python3.7` and you'll see that pip is trying to build `backport.zoneinfo` from sources because there's no wheel available for arm64, the compilation of which fails because `gcc` isn't installed in the airflow image. Add insult to injury, it's not possible to install gcc because the image is locked to a non-root user. > > `tzlocal` is pulled as dependency of another package that we need to install inside the image (something used by our code running in airflow dags) > > There's no wheel for that package on arm64: [pganssle/zoneinfo#100 (comment)](https://github.com/pganssle/zoneinfo/pull/100#issuecomment-1081338338) Sure. As you can see here it's fixed in Python 2.7.2 so image 2.3.4 does not contain the package installed. The ARM version of the image has an experimental status (precisely because we are not runnig all tests on it) - this might change when we have ARM runners in the future, but for now you need to handle it yourself. Obviously you can build your own image and it's described how to do it - and even how to add packages the require compilation - straight in our docker image documentation (it includes the very example of adding packages that require complilation - installing build-essentials after changing the user to root and swtching to airflow before) https://airflow.apache.org/docs/docker-stack/build.html#example-when-you-add-packages-requiring-compilation - you can follow the docs and build your own image. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
