Uploaded image for project: 'Qt Cloud'
  1. Qt Cloud
  2. CLOUD-81

Use setup.py to package Qt CI

    XMLWordPrintable

Details

    • Task
    • Resolution: Done
    • P2: Important
    • None
    • None
    • Backend
    • Gemini sprint 1, Gemini sprint 2

    Description

      Benefits of using setup.py

      1. Creates a package which other users can install using PIP
      2. Qt creator can also install the package using PIP
      3. Or Qt creator can ship with this PIP and install it in the VENV created during installation
      4. Easy to maintain. To update the list of new features, we do not really need the code change, just update the "manifest.in" file
      5. This is how all standard python modules are shipped
      6. Easy scaleable to multiple projects

      Plus a lot of stuff which can be managed better as compared to one single script.

      Ultimately, when setup.py is implemented we can do something like:

      1. python setup.py bdist <-- to build
      2. Deliver the content of dist/qtci-version.tar.gz to Qt creator team for integration
      3. Qt creator can install this plugin using pip install qtci-version.tar.gz

      ------------------------------------

      Update / Jan 21, 2022

      In order to achieve this, there would be small changes that are needed in our repository structure. For example, have the src directory structure renamed to something like this: 

       

      src/
          bin/
          CHANGES.txt
          docs/
          LICENSE.txt
          MANIFEST.in
          README.txt
          setup.py
          qtci/
                __init__.py
                run.py
                sub_modules/
                    __init__.py
                    ngrok.py
                    gitlab.py
                    gitpython.py
                    server.py 
      

      IN addition to this, we have our static assets - like html pages, javascript libraries etc - that should be packaged as well.

      Attachments

        Activity

          People

            as33ms Aseem Shakuntal
            as33ms Aseem Shakuntal
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: