Pulp: Issueshttps://pulp.plan.io/https://pulp.plan.io/favicon.ico2021-10-05T13:56:02ZPulp
Planio Ansible Plugin - Task #9489 (MODIFIED): Make use of shared_resources in sync and copy jobshttps://pulp.plan.io/issues/94892021-10-05T13:56:02ZmdellwegAnsible Plugin - Story #9346 (MODIFIED): As user, I can sync collections using a GitRemotehttps://pulp.plan.io/issues/93462021-09-03T18:28:51ZdaviddavisAnsible Plugin - Story #9345 (MODIFIED): As a user, I can create a GitRemote to sync content from...https://pulp.plan.io/issues/93452021-09-03T18:28:29ZdaviddavisAnsible Plugin - Task #9152 (CLOSED - COMPLETE): Comply with orphan clean changes made in pulpcor...https://pulp.plan.io/issues/91522021-07-27T14:16:40Zdaviddavis
<p><a href="https://github.com/pulp/community/discussions/59" class="external">https://github.com/pulp/community/discussions/59</a></p> Ansible Plugin - Story #8205 (MODIFIED): Add AnsibleCollectionDeprecated resource to export/importhttps://pulp.plan.io/issues/82052021-02-03T23:48:12Zgerrod
<a name="The-Two-Related-Problem"></a>
<h2 >The Two Related Problem<a href="#The-Two-Related-Problem" class="wiki-anchor">¶</a></h2>
<ol>
<li>The 'deprecated' data is mutable.</li>
<li>The 'deprecated' data is not correctly included in import/export data</li>
</ol>
<a name="Solution"></a>
<h2 >Solution<a href="#Solution" class="wiki-anchor">¶</a></h2>
<p>From a high level, make the <a href="https://github.com/pulp/pulp_ansible/blob/4b3d63f14dd85b9bfd689074defb99a23ee72f31/pulp_ansible/app/models.py#L281" class="external"><code>AnsibleCollectionDeprecated</code></a> content.</p>
<a name="Modeling"></a>
<h3 >Modeling<a href="#Modeling" class="wiki-anchor">¶</a></h3>
<p>Here are the rough steps involved:</p>
<ol>
<li>switch <a href="https://github.com/pulp/pulp_ansible/blob/4b3d63f14dd85b9bfd689074defb99a23ee72f31/pulp_ansible/app/models.py#L281" class="external">the existing AnsibleCollectionDeprecated</a> to inherit from Content</li>
<li>Remove the <a href="https://github.com/pulp/pulp_ansible/blob/4b3d63f14dd85b9bfd689074defb99a23ee72f31/pulp_ansible/app/models.py#L286-L288" class="external"><code>repository_version</code> FK</a> entirely.</li>
<li>Change the <a href="https://github.com/pulp/pulp_ansible/blob/4b3d63f14dd85b9bfd689074defb99a23ee72f31/pulp_ansible/app/models.py#L289" class="external"><code>collection</code></a> field to be a string with the collection name instead</li>
<li>Add a string field called namespace.</li>
<li>The uniqueness constraint should be the tuple "namespace", "collection_name"</li>
</ol>
<a name="Sync-Implementation"></a>
<h3 >Sync Implementation<a href="#Sync-Implementation" class="wiki-anchor">¶</a></h3>
<p>The sync code will continue to parse the deprecated data in FirstStage in the same way, but instead of <a href="https://github.com/pulp/pulp_ansible/blob/master/pulp_ansible/app/tasks/collections.py#L140-L153" class="external">saving/managing them in first-stage</a>, have the stages pipeline handle it all by making <code>AnsibleCollectionDeprecated</code> in-memory and associating with a declarative content object.</p>
<a name="The-Galaxy-API-viewset"></a>
<h3 >The Galaxy API viewset<a href="#The-Galaxy-API-viewset" class="wiki-anchor">¶</a></h3>
<p><a href="https://github.com/pulp/pulp_ansible/blob/8cd963d769e5b25f957d241571e21c371264a8f4/pulp_ansible/app/galaxy/v3/views.py#L172" class="external">Port this portion</a> to look for the objects in the set of content of the RepositoryVersion.</p>
<a name="The-viewset-for-setunset-deprecation-handling"></a>
<h3 >The viewset for set/unset deprecation handling<a href="#The-viewset-for-setunset-deprecation-handling" class="wiki-anchor">¶</a></h3>
<p><a href="https://github.com/pulp/pulp_ansible/blob/8cd963d769e5b25f957d241571e21c371264a8f4/pulp_ansible/app/galaxy/v3/views.py#L298-L306" class="external">Port this portion</a> to generate a task that creates a RepositoryVersion</p>
<a name="Additional-work-needed-to-get-this-working-with-ImportExport"></a>
<h3 >Additional work needed to get this working with Import/Export<a href="#Additional-work-needed-to-get-this-working-with-ImportExport" class="wiki-anchor">¶</a></h3>
<p>Add a model to model resources: <a href="https://github.com/pulp/pulp_ansible/blob/master/pulp_ansible/app/modelresource.py" class="external">https://github.com/pulp/pulp_ansible/blob/master/pulp_ansible/app/modelresource.py</a></p> Ansible Plugin - Story #8194 (MODIFIED): Syncing will exclude collection versions found at `/excl...https://pulp.plan.io/issues/81942021-02-02T16:28:54Zgerrod
<p>Add a field to CollectionRemote caled <code>excludes</code> which, when set, will cause the sync to exclude those collections and namespaces during sync. This will take the same format as a regular requirements file.</p> Ansible Plugin - Task #7938 (CLOSED - COMPLETE): [EPIC] As a user, I have improved Galaxy V3 sync...https://pulp.plan.io/issues/79382020-12-07T20:11:40Zbmbouterbmbouter@redhat.comAnsible Plugin - Task #7631 (CLOSED - COMPLETE): Release 0.4.1https://pulp.plan.io/issues/76312020-09-30T15:06:05ZdaviddavisAnsible Plugin - Task #7558 (CLOSED - COMPLETE): Release 0.4.0https://pulp.plan.io/issues/75582020-09-23T18:12:44ZdaviddavisAnsible Plugin - Task #6650 (CLOSED - COMPLETE): Remove use of fixtures from fedorapeople.orghttps://pulp.plan.io/issues/66502020-05-05T14:04:16Zbmbouterbmbouter@redhat.comAnsible Plugin - Task #5928 (CLOSED - COMPLETE): [EPIC] Complete CLI testing for Role and Collect...https://pulp.plan.io/issues/59282020-01-03T17:35:46Zbmbouterbmbouter@redhat.com
<p>We want to test against the "latest" ansible-galaxy CLI. Currently that is against 2.9.</p>
<p>Using the "latest" CLI we should fully test:</p>
<a name="Role-Workflows"></a>
<h3 >Role Workflows<a href="#Role-Workflows" class="wiki-anchor">¶</a></h3>
<p>1. Installing a Role by name. The docs for this are here: <a href="https://pulp-ansible.readthedocs.io/en/latest/workflows/ansible-galaxy-client.html#using-the-pulp-galaxy-api" class="external">https://pulp-ansible.readthedocs.io/en/latest/workflows/ansible-galaxy-client.html#using-the-pulp-galaxy-api</a></p>
<p>Note, uploading a Role from the CLI is currently unsupported, so we won't test that</p>
<a name="Collection-Workflows"></a>
<h3 >Collection Workflows<a href="#Collection-Workflows" class="wiki-anchor">¶</a></h3>
<p>1. Uploading a Collection via the ansible-galaxy CLI. The docs for this are here: <a href="https://pulp-ansible.readthedocs.io/en/latest/workflows/upload-collection.html#upload-a-collection-via-ansible-galaxy" class="external">https://pulp-ansible.readthedocs.io/en/latest/workflows/upload-collection.html#upload-a-collection-via-ansible-galaxy</a></p>
<p>2. Install a Collection via the ansible-galaxy CLI. The docs for this are here: <a href="https://pulp-ansible.readthedocs.io/en/latest/workflows/collection-install.html" class="external">https://pulp-ansible.readthedocs.io/en/latest/workflows/collection-install.html</a></p>
<p>NOTE: we should put all CLI tests in one place in the testing folder. Let's make a new folder under functional called 'cli'. That would live here: <a href="https://github.com/pulp/pulp_ansible/tree/master/pulp_ansible/tests/functional" class="external">https://github.com/pulp/pulp_ansible/tree/master/pulp_ansible/tests/functional</a></p> Ansible Plugin - Task #5912 (CLOSED - COMPLETE): Bootstrap pulp_galaxy repository using plugin te...https://pulp.plan.io/issues/59122019-12-20T17:11:33Zbmbouterbmbouter@redhat.com
<p>The plugin template should be used to create a new repository called pulp_galaxy.</p> Ansible Plugin - Task #5911 (CLOSED - COMPLETE): [Epic] Port automation hub code to a pulp plugin...https://pulp.plan.io/issues/59112019-12-20T17:05:56Zbmbouterbmbouter@redhat.comAnsible Plugin - Test #5333 (CLOSED - COMPLETE): As a user, I can sync collections from another P...https://pulp.plan.io/issues/53332019-08-22T17:28:11Zdaviddavis
<p>In lieu of setting up two Pulp servers, I would just use two repositories.</p>
<p>Test steps:</p>
<p>1. Create a collections repo, remote, sync and publish<br>
2. Create a second repository and a remote which points to the distribution in step 1<br>
3. Sync the second repo and confirm it has the same contents as the first.</p> Ansible Plugin - Task #3496 (CLOSED - COMPLETE): Rename Importer to Remotehttps://pulp.plan.io/issues/34962018-03-16T13:22:16Zamacdona@redhat.comaustin@redhat.com
<p>This task is also involves making the code function with the changes in <a class="issue tracker-2 status-11 priority-6 priority-default closed" title="Task: Rename Importers to Remotes (CLOSED - CURRENTRELEASE)" href="https://pulp.plan.io/issues/3488">#3488</a></p>