0

I have been tasked with upgrading this elastic beanstalk instance. Originally it was running Python 3.6 on Amazon Linux 1. Now I am upgrading to Python 3.8 to Amazon Linux 2. It is a Django application. Originally in the .ebextensions there was a file to install packages.

packages:
  yum:
    python34-devel: []
    postgresql93: []
    postgresql93-devel: []
    gcc-c++: []

I remember the gcc package was needed in order for us to add pandas and numpy as dependencies for the application. However when I upgraded to Amazon Linux 2 it could not find any of these packages. I removed them all and the application seems to be working fine through my testing. In the new Amazon Linux 2 do I need to specifically download any of these packages or are they automatically included? Or do I just not need them anymore?

Also, the code base and application were already created before I started working on it. That is why I am currently unfamiliar with what the purpose of most of those packages are besides the gcc one.

I have tried researching the different packages and seeing if I need them for my current application. I have read a lot of AWS docs, but they just tell me how to download packages and not when I would need them.

  • You probably have `psycopg2` in your Python dependencies, which is why `postgresql{version}` and `postgresql{version}-devel` is needed. The `python{version}-devel` is needed for building certain packages from source. The packages are likely renamed in AL2 -- probably just changing the versions to modern available versions will work. You _may_ need [extras](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/amazon-linux-ami-basics.html#extras-library) in AL2, compared to AL1. – sytech Apr 10 '23 at 22:47

0 Answers0