[Pulp-dev] Changes in the Pulp 3 Upload story

Austin Macdonald austin at redhat.com
Mon Feb 18 19:41:54 UTC 2019


Originally, our upload story was as follows:
The user will upload a new file to Pulp via POST to /artifacts/ (provided
by core)
The user will create a new plugin specific Content via POST to
/path/to/plugin/content/, referencing whatever artifacts that are
contained, and whatever fields are expected for the new content.
The user will add the new content to a repository via POST to
/repositories/1/versions/

However, this is somewhat cumbersome to the user with 3 API calls to
accomplish something that only took one call in Pulp 2.

There are a couple of different paths plugins have taken to improve the
user experience:
The Python plugin follows the above workflow, but reads the Artifact file
to determine the values for the fields. The RPM plugin has gone even
farther and created a new endpoint for "one shot" upload that perform all
of this in a single call. I think it is likely that the Python plugin will
move more in the "one shot" direction, and other plugins will probably
follow.

That said, I think we should discuss this as a community to encourage
plugins to behave similarly, and because there may also be a possibility
for sharing some of code. It is my hope that a "one shot upload" could do 2
things: 1) Upload and create Content. 2) Optionally add that content to
repositories.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pulp-dev/attachments/20190218/59c58ce4/attachment.htm>


More information about the Pulp-dev mailing list