On 04/09/2018 02:18 PM, Austin Macdonald wrote:

Austin, Dennis, and Milan have identified the following issues with current Pulp3 REST API design:

  * Action endpoints are problematic.
      o Example POST@/importers/<plugin>/sync/
      o They are non-RESTful and would make client code tightly
        coupled with the server code.
      o These endpoints are inconsistent with the other parts of the
        REST API.
      o DRF is not being used as intended for action endpoints so we
        have to implement extra code. (against the grain)


  * We don't have a convention for where plug-in-specific, custom
    repository version creation endpoints.
      o example POST@/api/v3/<where?>/docker/add/
      o needs to be discoverable through the schema


  * For direct repository version creation, plugins are not involved.
      o validation correctness problem:
      o example: POST@/api/v3/repositories/<repository_id>/versions/

Looks like half of the plugins will need to participate in creating repository versions (outside of sync). The API design should take a consistent approach to creating repository versions (/add/ _and_ /sync/).

We would like to get feedback on these issues being sound and worth resolving before we resume particular solution discussion[1].

Austin, Dennis, and Milan

[1] https://www.redhat.com/archives/pulp-dev/2018-March/msg00066.html <https://www.redhat.com/archives/pulp-dev/2018-March/msg00066.html>

Pulp-dev mailing list

Pulp-dev mailing list

Reply via email to