Pulp: Issueshttps://pulp.plan.io/https://pulp.plan.io/favicon.ico2021-11-30T16:51:15ZPulp
Planio Pulp - Task #9592 (CLOSED - CURRENTRELEASE): Accept custom downloader factory in the Remote.get_d...https://pulp.plan.io/issues/95922021-11-30T16:51:15Zttereshcttereshc@redhat.com
<p>If the only change for the download functionality is happening as a part of a downloader factory, <code>Remote.get_downloader</code> code would be copy-pasted only for the sake of using a different downloader factory.</p>
<p>Add an optional parameter <code>downloader_factory</code> to the <code>Remote.get_downloader</code>. It should default to download factory configured on a remote to preserve the current behaviour.</p> Migration Plugin - Story #7714 (CLOSED - CURRENTRELEASE): As a user, I can start migration from s...https://pulp.plan.io/issues/77142020-10-15T11:51:18Zttereshcttereshc@redhat.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p>In case of any major issues during migration, manual changes in the db (it's not supposed to happen but some people still do it), just willingness to start from scratch, there is no way to remove migrated data in pulp 3, apart from dropping database.</p>
<a name="Proposed-Solution"></a>
<h2 >Proposed Solution<a href="#Proposed-Solution" class="wiki-anchor">¶</a></h2>
<p>Provide a separate action to remove data for plugins specified in a Migration Plan<br>
<code>POST /pulp/api/v3/migration-plans/<uuid>/reset/</code></p>
<p>This action should not allow running any migration in parallel.<br>
This action will remove all the data in Pulp 3 for the corresponding Pulp 2 plugins specified in the migration plan (even if the data is not migrated but was added later), all pre-migrated data, all content/artifacts/remoteartifacts, repositories, remotes, publications, distributions for those plugins (pulp2-> pulp3: iso -> file plugin, rpm -> rpm plugin, docker -> container plugin)</p> Pulp - Task #7460 (CLOSED - CURRENTRELEASE): Run orphan cleanup in a loop until there is no orpha...https://pulp.plan.io/issues/74602020-09-04T16:40:49Zttereshcttereshc@redhat.com
<p>Distribution trees in pulp_rpm plugin have subrepositories.
During orphan cleanup of a DistributionTree, sub repositories are deleted and new orphaned content is created.</p>
<p>The suggestion is to run orphan cleanup queries in a loop until there is no orphaned content left.</p> Migration Plugin - Task #6963 (CLOSED - CURRENTRELEASE): Add a function for cleaning up database ...https://pulp.plan.io/issues/69632020-06-11T15:03:04Zdkliban@redhat.com
<a name="Problem"></a>
<h3 >Problem<a href="#Problem" class="wiki-anchor">¶</a></h3>
<p>The migration plugin tests need to be able to clean up the Pulp 3 database at the end of most tests.</p>
<a name="Solution"></a>
<h3 >Solution<a href="#Solution" class="wiki-anchor">¶</a></h3>
<p>A new function needs to be written that is going to remove data from all the tables that are involved in the migration. This function needs to load a list of tables by looking at all the available models from the pulpcore app config. SQL code should be generated to delete everything from each of the tables associated with each of the models.</p>
<p>We can probably reuse a lot of the code from the Django flush command: <a href="https://github.com/django/django/blob/master/django/core/management/commands/flush.py#L27" class="external">https://github.com/django/django/blob/master/django/core/management/commands/flush.py#L27</a></p>
<a name="Rejected-solution"></a>
<h3 >Rejected solution<a href="#Rejected-solution" class="wiki-anchor">¶</a></h3>
<p>Using django reset_db requires all connections to the db being closed, it means that pulp workers needs to be down. It seems not time effective to that (stop services, clean db, run migrations,start services) for every test or every group of tests.</p> Pulp - Story #4054 (CLOSED - WONTFIX): Study Pulp data modelhttps://pulp.plan.io/issues/40542018-10-02T08:30:56Zvdusek
<p>Study Pulp data model to be able to compare Git and Pulp versioning. Start with reading<br>
these discussions: <a href="https://pulp.plan.io/issues/3360" class="external">#3360</a>, <a href="https://pulp.plan.io/issues/3842" class="external">#3842</a>, <a href="https://www.redhat.com/archives/pulp-dev/2017-December/msg00075.html" class="external">pulp-dev/2017-December/msg00075</a>.</p> Pulp - Task #3979 (CLOSED - CURRENTRELEASE): remove id field from all serializershttps://pulp.plan.io/issues/39792018-09-05T20:15:17Zdkliban@redhat.com
<p>Story 3850 is complete and Pulp returns shorter hrefs. The OpenAPI schema uses hrefs as identifiers. However, our REST API still returns 'id' with all the resources. To prevent users from getting confused about which field is the identifier for the resource, the id should be omitted from the response.</p> Pulp - Story #3944 (CLOSED - CURRENTRELEASE): Rename sync_mode and change its typehttps://pulp.plan.io/issues/39442018-08-29T14:30:52Zvdusek
<p>According to the pulp-dev mailing list discussion. Rename sync_mode param to mirror, change its type from string to boolean and change all the necessary logic in the code.</p> File Support - Story #3913 (CLOSED - CURRENTRELEASE): As a user I can specify the manifest filena...https://pulp.plan.io/issues/39132018-08-13T15:24:44Zdaviddavis
<p>Currently, the filename is hardcoded as PULP_MANIFEST. Allow users to specify a filename on the file publisher to be used when publishing. Optimally, the default should be the same as in <a class="issue tracker-3 status-11 priority-6 priority-default closed" title="Story: As a user, I can specify the file manifest name on the remote when syncing and publishing a repos... (CLOSED - CURRENTRELEASE)" href="https://pulp.plan.io/issues/3912">#3912</a> (ie manifest.csv).</p> File Support - Story #3912 (CLOSED - CURRENTRELEASE): As a user, I can specify the file manifest ...https://pulp.plan.io/issues/39122018-08-13T15:23:03Zdaviddavis
<p>Currently, we require users to specify the full url to the PULP_MANIFEST file. This is a bit at odds with how Pulp 2 and other plugins work so instead, we'd like to add a separate field in which users can specify the filename of the remote manifest.</p> File Support - Task #3494 (CLOSED - WONTFIX): Add sync_mode parameter to endpoint that deploys sy...https://pulp.plan.io/issues/34942018-03-16T13:21:20Zamacdona@redhat.comaustin@redhat.com
<p>sync_mode will be removed in <a href="https://pulp.plan.io/issues/3492" class="external">https://pulp.plan.io/issues/3492</a>, which will break sync.</p> Pulp - Task #2910 (CLOSED - CURRENTRELEASE): Create a plugin writer's guidehttps://pulp.plan.io/issues/29102017-07-14T18:35:20Zbizhangbizhang@redhat.com
<p>This guide exists as a stub under pulp/docs/plugins<br>
It needs to be fleshed out as a comprehensive guide for the first time pulp plugin writer.</p>
<p>This guide should include:</p>
<ul>
<li>A Plugin Completeness Checklist</li>
<li>Writing your first plugin</li>
<li>Pulp Plugin Basics</li>
</ul>
<ul>
<li>a plugin is a django app</li>
<li>what is the recommended layout of a plugin</li>
<li>how pulp does plugin viewset, serializer discovery</li>
<li>what is the entrypoint</li>
<li>what importer, publish, sync does and how they to implement them</li>
<li><del>Documentation</del></li>
</ul>
<ul>
<li><del>how to host your docs on docs.pulpproject.org</del></li>
<li>Error Handling</li>
<li><del>Generating a CLI</del></li>
<li>Releasing your plugin</li>
</ul> Pulp - Task #2863 (CLOSED - COMPLETE): Align existing code base with publisher attributes from th...https://pulp.plan.io/issues/28632017-06-30T17:33:25Zamacdona@redhat.comaustin@redhat.com
<p>In our MVP call today , we altered the language that describes publisher fields. This task is to align the code to what we discussed.<br>
<strong>Check <a href="https://pulp.plan.io/projects/pulp/wiki/Pulp_3_Minimum_Viable_Product#Repositories" class="external">the repositories section of the MVP page</a> for up to date language.</strong></p> Pulp - Story #2859 (CLOSED - CURRENTRELEASE): As a developer, I have a template to create a new ...https://pulp.plan.io/issues/28592017-06-29T12:50:53Zamacdona@redhat.comaustin@redhat.com
<p>The template should include stubs of a plugin Django app and all required Models, Serializers, ViewSets, etc. The template should be heavily commented for new developers. It should also install the entry point for the Django app.</p>
<p>Additionally, it should have a rename utility similar to what The Foreman does <a href="http://projects.theforeman.org/projects/foreman/wiki/How_to_Create_a_Plugin#Using-the-example-plugin" class="external">here</a>.</p>
<p>The template should also contain a documentation template that includes the sections listed on the proposed doc structure etherpad [0]</p>
<p>This should live in a new git repo, pulp/plugin_template</p>
<p>[0] <a href="http://pad-katello.rhcloud.com/p/pulp3_doc_structure" class="external">http://pad-katello.rhcloud.com/p/pulp3_doc_structure</a></p> Pulp - Task #2380 (CLOSED - CURRENTRELEASE): Create a redmine task for each 2.y celery task to be...https://pulp.plan.io/issues/23802016-11-02T15:14:14Zbmbouterbmbouter@redhat.com
<p>We have roughly 20-30 celery tasks in Pulp 2.y. We need to have a redmine task created for each one tracking the conversion of that celery task to Pulp3.</p>
<p>To identify the list of celery tasks in 2.y I recommend inspecting the celery registry of a 2.y dev install. You can inspect the registry using a technique similar to what this[0] unit test does.</p>
<p>Each task needs to be moved out of the pulp.server and into somewhere. We should discuss on the issues themselves where each one should go. Also on Pulp3 all of the tasks are expected to be imported into pulp.tasking.registry which is where celery will discover them. Note that it's probably not a good idea to have the task code itself live in pulp.tasking.registry so where to house that code is something we should discuss.</p>
<p>The details of what the Pulp3 behaviors should be for that task can be discussed on each issue created. There are a few that will be deleted. Let's make issues for all the 2.y tasks and then we can identify ones to close on the individual issues.</p>
<p>[0]: <a href="https://github.com/bmbouter/pulp/blob/1fe832ce1d320129c680755f38cafae26f5159d0/server/test/unit/server/async/test_tasks.py#L1053-L1053" class="external">https://github.com/bmbouter/pulp/blob/1fe832ce1d320129c680755f38cafae26f5159d0/server/test/unit/server/async/test_tasks.py#L1053-L1053</a></p> Pulp - Story #1317 (CLOSED - WONTFIX): allow to host npm contenthttps://pulp.plan.io/issues/13172015-10-16T14:48:02Zmsuchy@redhat.commsuchy@redhat.com
<p>As part of Software Pipeline project in Red Hat, we would like to use Pulp as repository for various upstream packages.</p>
<p>AFAIK Pulp is unable to host those native formats. So we are forced to use another solution. Likely Sonatype Nexus.<br>
It would be nice if you can support those formats in close feature, so we can use Pulp only.</p>
<p>I understand that this is being worked on, so adding for tracking pourposes.</p>