[Pulp-dev] Namespacing plugins, looking for feedback

Austin Macdonald amacdona at redhat.com
Wed Jan 9 17:34:19 UTC 2019


On Wed, Jan 9, 2019 at 12:30 PM Tatiana Tereshchenko <ttereshc at redhat.com>
wrote:

> To summarize where we are so far:
> *All* master/detail related endpoints will be automatically prepended
> with Django app *label* [0]
>     - concerns: 'pulp_' in the label
>     - options to address concerns:
>          * introduce a new attribute to the AppConfig class to use in the
> endpoints construction (not supported by majority so far)
>          * drop 'pulp_' part from a *plugin's* app label (supported by
> majority so far)
>
> Questions/concerns about dropping the 'pulp_' from the plugins' app label:
>
> # Table names in the DB are prepended using the app label. We need to be
> sure to avoid collisions with other applications for pulpcore and for pulp
> plugins. Are they already in the "pulp" database?
> Yes, all pulpcore and pulp plugin tables are in "pulp" database.
>
> # The names in the list of installed plugins would then not be the same as
> the packages themselves.
> It's probably ok. The status would look like this:
>         {
>             "component": "*file*",
>             "version": "0.0.1b6"
>         },
>         {
>             "component": "*rpm*",
>             "version": "3.0.0b1"
>         }
>

For the status api, we could use `name` rather than `label`:
        {
            "component": "*pulp_file.app*",
            "version": "0.0.1b6"
        },


> # What about the label for the core? (not discussed)
> It stays as is - 'pulp_app'.
>
> [0]
> https://docs.djangoproject.com/en/2.1/ref/applications/#django.apps.AppConfig.label
>
> On Tue, Jan 8, 2019 at 8:22 PM Daniel Alley <dalley at redhat.com> wrote:
>
>> I'm not opposed to this plan, I just want to point out that it would make
>> the status API make slightly less sense.  The names in the list of
>> installed plugins would then not be the same as the packages themselves.
>> It's probably close enough as to not be a problem though.
>>
>> On Tue, Jan 8, 2019 at 12:23 PM Austin Macdonald <amacdona at redhat.com>
>> wrote:
>>
>>>
>>>
>>> On Tue, Jan 8, 2019 at 12:12 PM Brian Bouterse <bbouters at redhat.com>
>>> wrote:
>>>
>>>> My understanding is that it's for both. It would be dropped from
>>>> app_label and that will automatically be used in master/detail urls. Is
>>>> that what others thought?
>>>>
>>>> This seems like the simplest approach to me. My only concern with this
>>> approach is making sure that the database will be properly namespaced so
>>> there won't be collisions with other applications that use postgres like
>>> Katello. AFAIK, the plugin tables don't need to be namespaced since they
>>> are already in the "pulp" database. Is that correct? If so, +1.
>>> _______________________________________________
>>> Pulp-dev mailing list
>>> Pulp-dev at redhat.com
>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>
>> _______________________________________________
>> Pulp-dev mailing list
>> Pulp-dev at redhat.com
>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>
> _______________________________________________
> Pulp-dev mailing list
> Pulp-dev at redhat.com
> https://www.redhat.com/mailman/listinfo/pulp-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pulp-dev/attachments/20190109/ba0229e8/attachment.htm>


More information about the Pulp-dev mailing list