Revitalize Fedora Badges

At this point I don’t think we should put in more effort,
it seems that a complete rewrite is needed.
zlopez

Why we think revitalizing is not a good idea

  1. Conversion of tahrir codebase from python2 into python3 would be a huge effort. Most of the code wasn’t touched in for over 3 years. The development environment could be set up, but needs plenty of updates. There is almost no documentation, so this needs to be created as well. The codebase is small, around 2000 lines of code, but it’s heavily dependent on the pyramid framework, which doesn’t have a great documentation and we no longer have people with the knowledge of pyramid in the CPE Team. We also don’t have knowledge in the team about the mako templates, but they are easy to comprehend. The CI probably worked in the past (.cico.pipeline file is available), but it’s no longer working, recommending to use either Zuul CI or GitHub Actions.

    What needs to be done:
    • Port from python2 to python3

    • Fix the dev environment

    • Add CI

    • Add dependency management (Optional)

    • Add tests

    • Convert from fedmsg to fedora messaging

    • Add documentation

    • Convert from Pyramid to Flask (Optional)

    • Use poetry (Optional)

  2. tahrir_api code is tested against python 3.5, 3.6 and 3.7 and test coverage is 74%. CI is using github actions. The repo needs some cleaning. There are still Travis CI and .cico.pipeline config. The database is using SQLAlchemy and alembic for migration. Tahrir-api doesn’t have any dev environment where you can test it out. It has only README as a documentation. Has no dependency management, I’m recommending renovate. API is using pyramid as a framework, which brings disadvantages mentioned earlier.

    What needs to be done:
    • Convert from Pyramid to Flask (Optional)

    • Add some tools to test it out in dev environment

    • Add dependency management (Optional)

    • Improve documentation

    • Use poetry (Optional)