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

RP-IVR Callback - Python and Flask upgradation activity in application and infrastructure #81

Closed
5 tasks done
Satendra-SR opened this issue Feb 12, 2024 · 2 comments
Closed
5 tasks done
Assignees

Comments

@Satendra-SR
Copy link
Member

Satendra-SR commented Feb 12, 2024

We are currently using Flask 1.1.2, which is getting older, and the latest version Flask 3.0.0 was upgraded on Sep 30, 2023. Within these releases, there are lots of minor and major releases which include breaking changes and it is recommended to upgrade the application dependencies timely to avoid any security vulnerability with the older versions.

With this, we are currently utilizing Python 3.8 for which, the support is going to end by Oct 2024. On the Cloud function, we do have support up to Python 3.12, which is aligned with what we can target in this ticket.

Image

Whenever we will be targeting to upgrade the application and infrastructure, we have to deal with upgrading other packages and make them compatible with Python 3.12 and Flask 3.0.0.

  • Upgrade the flask version from Flask 1.2.2 to Flask 3.0.0
    • Here is the list of changes mentioned in official documentation - Flask version upgrade change logs
    • The upgrades should be done sequentially, by upgrading one version each time to update the codebase based on the changes mentioned in the change log and test the functionality - 2 pointers - We will have to learn from RP-IVR-Analytics
    • Test the entire application functionality - 2-pointer
    • Bug fixes and enhancement required during upgrade - 1 pointers
  • Upgrade the Python from Python 3.8 to Python 3.12. Flask 3.0.0 is compatible with Python 3.8 and above, so we can pick it up once the Flask upgrade is done. - 2 pointer
  • Upgrade the staging cloud function to Python 3.12 and run the final testing on staging - 1 pointer
  • Prepare the release for production, including the Rollback plan in case anything goes wrong, we can swiftly move it to the old state - 1 pointer
  • Release on Production and Monitor for a few days - 0 pointer We can utilize the same point we are using for RP-IVR-Analytics for the same activity.
@Sachinbisht27
Copy link
Member

Closing as completed now and released on production

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

No branches or pull requests

2 participants