Pulp: Issueshttps://pulp.plan.io/https://pulp.plan.io/favicon.ico2021-02-10T17:21:38ZPulp
Planio Ansible Plugin - Issue #8238 (CLOSED - NOTABUG): 0030_collectionversion_requires_ansible.py migra...https://pulp.plan.io/issues/82382021-02-10T17:21:38Zalikins
<p>After updating galaxy_ng to use git versions of pulpcore, pulp_ansible, pulp_container I:</p>
<ol>
<li>Ran <code>./compose run api manage handle-artifact-checksums</code>. That seemed to run without errors.</li>
<li>
<code>./compose up</code> which brought up the galaxy_ng servers but showed needed migrations.</li>
<li>In another term, ran <code>./compose run api manage migrate</code>
</li>
</ol>
<p>Got the Error:</p>
<pre><code>Operations to perform:
Apply all migrations: admin, ansible, auth, authtoken, container, contenttypes, core, galaxy, guardian, sessions
Running migrations:
Applying ansible.0027_tag_length... OK
Applying ansible.0028_collectionversion_namespace_length... OK
Applying ansible.0029_manifest_and_files_json_fields... OK
Applying ansible.0030_collectionversion_requires_ansible...Traceback (most recent call last):
File "/venv/bin/django-admin", line 8, in <module>
sys.exit(execute_from_command_line())
File "/venv/lib64/python3.6/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
utility.execute()
File "/venv/lib64/python3.6/site-packages/django/core/management/__init__.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 323, in run_from_argv
self.execute(*args, **cmd_options)
File "/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 364, in execute
output = self.handle(*args, **options)
File "/venv/lib64/python3.6/site-packages/django/core/management/base.py", line 83, in wrapped
res = handle_func(*args, **kwargs)
File "/venv/lib64/python3.6/site-packages/django/core/management/commands/migrate.py", line 234, in handle
fake_initial=fake_initial,
File "/venv/lib64/python3.6/site-packages/django/db/migrations/executor.py", line 117, in migrate
state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
File "/venv/lib64/python3.6/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
File "/venv/lib64/python3.6/site-packages/django/db/migrations/executor.py", line 245, in apply_migration
state = migration.apply(state, schema_editor)
File "/venv/lib64/python3.6/site-packages/django/db/migrations/migration.py", line 124, in apply
operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
File "/venv/lib64/python3.6/site-packages/django/db/migrations/operations/special.py", line 190, in database_forwards
self.code(from_state.apps, schema_editor)
File "/src/pulp_ansible/pulp_ansible/app/migrations/0030_collectionversion_requires_ansible.py", line 19, in set_requires_ansible_and_manifest_and_files_json
with artifact.file.open() as artifact_file, tarfile.open(fileobj=artifact_file, mode="r") as tar:
File "/venv/lib64/python3.6/site-packages/django/db/models/fields/files.py", line 74, in open
self.file = self.storage.open(self.name, mode)
File "/venv/lib64/python3.6/site-packages/django/core/files/storage.py", line 36, in open
return self._open(name, mode)
File "/venv/lib64/python3.6/site-packages/django/core/files/storage.py", line 224, in _open
return File(open(self.path(name), mode))
FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/pulp/media/artifact/d4/07b75923940bb9a477be4fe019a9ae1ec8b85a998f218aa5913a455488a202'
ERROR: 1
</code></pre> Ansible Plugin - Issue #7551 (CLOSED - CURRENTRELEASE): Standalone galaxy_ng syncing from cloud.c...https://pulp.plan.io/issues/75512020-09-22T19:40:30Zalikins
<p><a href="https://github.com/ansible/galaxy_ng/issues/441" class="external">https://github.com/ansible/galaxy_ng/issues/441</a> is the origin of this.</p>
<p>It seems like if a standalone galaxy_ng syncs from cloud.ci.redhat.com, the doc blobs for the collections isn't
synced.</p>
<p><a href="https://ci.cloud.redhat.com/api/automation-hub/content/synctest/v3/collections" class="external">https://ci.cloud.redhat.com/api/automation-hub/content/synctest/v3/collections</a> is an example repo set up with
some collections with docs blobs.</p>
<p>At the moment, it's unclear if this is an issue with standalone galaxy_ng, or with the ci.cloud galaxy_ng / pulp_ansible / pulp_core issue. But this is a heads up.</p>
<p>For an example of a collection in that repo:</p>
<p><a href="https://ci.cloud.redhat.com/api/automation-hub/content/synctest/v3/collections/ibm/spectrum_virtualize/" class="external">https://ci.cloud.redhat.com/api/automation-hub/content/synctest/v3/collections/ibm/spectrum_virtualize/</a></p>
<p>And the docs-blob for a particular version:
<a href="https://ci.cloud.redhat.com/api/automation-hub/content/synctest/v3/collections/ibm/spectrum_virtualize/versions/1.0.12-awc16/docs-blob/" class="external">https://ci.cloud.redhat.com/api/automation-hub/content/synctest/v3/collections/ibm/spectrum_virtualize/versions/1.0.12-awc16/docs-blob/</a></p>
<p>The latter shows info available in the docs-blob, but it apperently doesn't sync synced to the standalone galaxy_ng</p>
<p>Versions:</p>
<p>On the standalone side:</p>
<p>galaxy-ng (4.2.0b2)
pulp-ansible (0.3.0)
pulpcore (3.6.0</p> Ansible Plugin - Issue #7512 (CLOSED - CURRENTRELEASE): Seeing some collections skipped with Coll...https://pulp.plan.io/issues/75122020-09-16T14:26:49Zalikins
<p>This is kind of asking for a consult on <a href="https://github.com/ansible/galaxy_ng/issues/437" class="external">https://github.com/ansible/galaxy_ng/issues/437</a></p>
<p>When testing standalone automation-hub that is setup for a remote that points to "community" (<a href="https://galaxy.ansible.com" class="external">https://galaxy.ansible.com</a>) when trying to sync with a remote that has a "requirements_file" specified, sometimes some collections are synced but others are ignored, seemingly with no errors.</p>
<p>The comments at <a href="https://github.com/ansible/galaxy_ng/issues/437" class="external">https://github.com/ansible/galaxy_ng/issues/437</a> have more examples.</p>
<p>The current hypothesis is that it may just be malformed requirements.yml causing parts to be ignored.</p>
<p>But I'm looking for any other ideas that may need to be investigated.</p> Ansible Plugin - Issue #7032 (CLOSED - DUPLICATE): Provide a way for subclasses of pulp viewset t...https://pulp.plan.io/issues/70322020-06-22T20:58:09Zalikins
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_ansible/710":<a href="https://github.com/pulp/pulp_ansible/issues/710" class="external">https://github.com/pulp/pulp_ansible/issues/710</a></p>
<hr>
<p>This is related to <a href="https://github.com/ansible/galaxy_ng/pull/254" class="external">https://github.com/ansible/galaxy_ng/pull/254</a>
and <a href="https://github.com/ansible/galaxy_ng/issues/247" class="external">https://github.com/ansible/galaxy_ng/issues/247</a></p>
<p>To paraphrase <a href="https://github.com/ansible/galaxy_ng/issues/247#issuecomment-644886557" class="external">https://github.com/ansible/galaxy_ng/issues/247#issuecomment-644886557</a>:</p>
<blockquote>
<p>The serializers used by the pulp collection viewsets (and therefore galaxy_ng collection viewsets) base the values for 'href' on url reverse() lookups, and end up with the pulp paths.</p>
<p>May mean galaxy_ng viewsets need to provide their own serializer.</p>
<p>But may be able to parameterize the reverse()'s to handle both cases. Possibly via providing a ViewSet.get_serializer_context()</p>
</blockquote>
<p><a href="https://github.com/ansible/galaxy_ng/pull/254" class="external">https://github.com/ansible/galaxy_ng/pull/254</a> is a fix / workaround that is based on subclassing the
related pulp collection Serializers and overriding the href related SerializerMethodFields methods.</p>
<p>ie, the 'get_href()' and similar methods.</p>
<p>The changes in #254 are kind of cut&paste and duplicate a chunk of pulp_ansible code (and diverge
from upstream as a result). So if there is a reasonable way to avoid that it's probably worth while.</p>
<p><a href="https://github.com/ansible/galaxy_ng/issues/247#issuecomment-644983783" class="external">https://github.com/ansible/galaxy_ng/issues/247#issuecomment-644983783</a> mentions a few vague ideas on approaches to handle this issue. In particular, the main <a class="issue tracker-3 status-11 priority-7 priority-high2 closed" title="Story: As a user, my rpm sync finishes quickly when upstream metadata hasn't changed (CLOSED - CURRENTRELEASE)" href="https://pulp.plan.io/issues/2">#2</a> point there.</p>
<p>Gist is providing a way for the serializers get_href methods to use a url namespace (or specify url name explicitly) when the viewset classes have been subclassed (as galaxy_ng.app.api.v3.viewsets.collections.CollectionViewSet does).</p>
<ul>
<li>
<p>There may be existing django or drf support for doing this but it isn't clear to me yet. (The 'content_app' attribute mentioned in <a href="https://github.com/ansible/galaxy_ng/issues/247#issuecomment-644983783" class="external">https://github.com/ansible/galaxy_ng/issues/247#issuecomment-644983783</a> seems like it is intended for exactly this case, but I couldn't get it to work. But that is likely developer error on my part)</p>
</li>
<li>
<p>Maybe this is something drf-nested-routers / rest_framework_nested is meant to support?</p>
</li>
</ul> Ansible Plugin - Task #6909 (CLOSED - WONTFIX): import_collection task to send filepath to galaxy...https://pulp.plan.io/issues/69092020-06-04T18:56:39Zawcrosby
<p>Currently the import_collection task sends the artifact fileobject to galaxy-importer. In galaxy-importer we want move from using the tarfile module to tar in shell.</p>
<p>We would like import_collection task to send the artifact filepath to galaxy-importer.</p>
<p>Also, currently in the fileobject we use the .storage.url property to download the artifact to a container to run "ansible-test sanity". So perhaps we can send the filepath + url instead of the opened fileobject.</p> Ansible Plugin - Issue #6510 (CLOSED - CURRENTRELEASE): v3.serializers.CollectionVersionSerialize...https://pulp.plan.io/issues/65102020-04-16T16:04:12Zalikins
<p>v3.serializers.CollectionVersionSerializer doesn't include distro base_path in the 'download_url'
it creates.</p>
<p>At the moment, since there is only one AnsibleRepository and one AnsibleDistribution, this doesn't
cause a problem. But once we have multiple repositories, the 'download_url' will need to include
the AnsibleDistribution.base_path in the url.</p>
<p>For example, with the galaxy_ng pr at <a href="https://github.com/ansible/galaxy_ng/pull/84/" class="external">https://github.com/ansible/galaxy_ng/pull/84/</a> it is possible to
use per distro api endpoints.</p>
<p>For now, pr <a class="issue tracker-2 status-11 priority-7 priority-high2 closed" title="Task: Document our branching strategy in more detail (CLOSED - CURRENTRELEASE)" href="https://pulp.plan.io/issues/84">#84</a> has a local CollectionVersionSerializer that adds base_path to the 'download_url'
so the 'download_url' looks like:</p>
<p>"<a href="http://localhost:24816/pulp/content/alikins-stage-distro-base-path/alikins.collection_inspect.0.0.182.tar.gz" class="external">http://localhost:24816/pulp/content/alikins-stage-distro-base-path/alikins.collection_inspect.0.0.182.tar.gz</a>",</p>
<p>That will allow galaxy_ng to provide download_urls for 'golden' distro artifacts and for other repos/distros.</p> Ansible Plugin - Issue #6129 (CLOSED - CURRENTRELEASE): sync doesn't do anything because 'downloa...https://pulp.plan.io/issues/61292020-02-11T15:58:41Zalikins
<p>With a fix for <a href="https://pulp.plan.io/issues/6116" class="external">https://pulp.plan.io/issues/6116</a> in place, the next
issue is related to when/where the 'download_url' attribute is available.</p>
<p>Current code in pulp_ansible.app.tasks.collections.CollectionsFirstStage._fetch_collections()
expects 'download_url' to be available but on v3 API, it's ownly on the collection version detail page,
so additional request for that api endpoint will be needed.</p> Ansible Plugin - Issue #6116 (CLOSED - CURRENTRELEASE): Collection sync task fails syncing from a...https://pulp.plan.io/issues/61162020-02-07T21:26:30Zalikins
<p>When attempting to sync a repo to a CollectionRemote that has a 'url' pointing to automation-hub, the sync fails in pulp_ansible.tasks.collections.CollectionSyncFirstStage._fetch_collections().</p>
<p>For automation-hub / v3 collections API, the 'versions_url' field no longer includes a scheme.
Previously a 'versions_url' would be a full url like <a href="https://galaxy.ansible.com/api/v3/collections/some_namespace/some_collection/versions/" class="external">https://galaxy.ansible.com/api/v3/collections/some_namespace/some_collection/versions/</a>, but the v3 api uses '/api/automation-hub/v3/collections/some_namespace/some_collection/versions'.</p>
<p>When the CollectionSync tasks uses 'version_url' (<a href="https://github.com/pulp/pulp_ansible/blob/master/pulp_ansible/app/tasks/collections.py#L349" class="external">https://github.com/pulp/pulp_ansible/blob/master/pulp_ansible/app/tasks/collections.py#L349</a>)
it eventually causes pulpcore DownloadFactory to hit a KeyError looking up the '' scheme (<a href="https://github.com/pulp/pulpcore/blob/master/pulpcore/download/factory.py#L135-L138" class="external">https://github.com/pulp/pulpcore/blob/master/pulpcore/download/factory.py#L135-L138</a>)</p>
<p><a href="https://gist.github.com/alikins/b6349ad49a5ce1b25fa6c9d938a01764#file-gistfile2-txt" class="external">https://gist.github.com/alikins/b6349ad49a5ce1b25fa6c9d938a01764#file-gistfile2-txt</a> has some logs pasted here for reference:</p>
<pre><code>pulp-worker_1 | pulp: rq.worker:ERROR: ValueError: URL: /api/automation-hub/v3/collections/autohubtest2/collection_dep_a_jbkboxzc/versions/ not supported.
pulp-worker_1 | Traceback (most recent call last):
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/download/factory.py", line 137, in build
pulp-worker_1 | builder = self._handler_map[scheme]
pulp-worker_1 | KeyError: ''
pulp-worker_1 |
pulp-worker_1 | During handling of the above exception, another exception occurred:
pulp-worker_1 |
pulp-worker_1 | Traceback (most recent call last):
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/worker.py", line 884, in perform_job
pulp-worker_1 | rv = job.perform()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/job.py", line 664, in perform
pulp-worker_1 | self._result = self._execute()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/job.py", line 670, in _execute
pulp-worker_1 | return self.func(*self.args, **self.kwargs)
pulp-worker_1 | File "/code/pulp_ansible/pulp_ansible/app/tasks/collections.py", line 80, in sync
pulp-worker_1 | d_version.create()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py", line 149, in create
pulp-worker_1 | loop.run_until_complete(pipeline)
pulp-worker_1 | File "/opt/rh/rh-python36/root/usr/lib64/python3.6/asyncio/base_events.py", line 484, in run_until_complete
pulp-worker_1 | return future.result()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 228, in create_pipeline
pulp-worker_1 | await asyncio.gather(*futures)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 43, in __call__
pulp-worker_1 | await self.run()
pulp-worker_1 | File "/code/pulp_ansible/pulp_ansible/app/tasks/collections.py", line 274, in run
pulp-worker_1 | async for metadata in self._fetch_collections():
pulp-worker_1 | File "/code/pulp_ansible/pulp_ansible/app/tasks/collections.py", line 351, in _fetch_collections
pulp-worker_1 | [remote.get_downloader(url=result["versions_url"]).run()]
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/app/models/repository.py", line 288, in get_downloader
pulp-worker_1 | return self.download_factory.build(url, **kwargs)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/download/factory.py", line 140, in build
pulp-worker_1 | raise ValueError(_('URL: {u} not supported.'.format(u=url)))
pulp-worker_1 | ValueError: URL: /api/automation-hub/v3/collections/autohubtest2/collection_dep_a_jbkboxzc/versions/ not supported.
pulp-worker_1 | Traceback (most recent call last):
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/download/factory.py", line 137, in build
pulp-worker_1 | builder = self._handler_map[scheme]
pulp-worker_1 | KeyError: ''
pulp-worker_1 |
pulp-worker_1 | During handling of the above exception, another exception occurred:
pulp-worker_1 |
pulp-worker_1 | Traceback (most recent call last):
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/worker.py", line 884, in perform_job
pulp-worker_1 | rv = job.perform()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/job.py", line 664, in perform
pulp-worker_1 | self._result = self._execute()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/job.py", line 670, in _execute
pulp-worker_1 | return self.func(*self.args, **self.kwargs)
pulp-worker_1 | File "/code/pulp_ansible/pulp_ansible/app/tasks/collections.py", line 80, in sync
pulp-worker_1 | d_version.create()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/plugin/stages/declarative_version.py", line 149, in create
pulp-worker_1 | loop.run_until_complete(pipeline)
pulp-worker_1 | File "/opt/rh/rh-python36/root/usr/lib64/python3.6/asyncio/base_events.py", line 484, in run_until_complete
pulp-worker_1 | return future.result()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 228, in create_pipeline
pulp-worker_1 | await asyncio.gather(*futures)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/plugin/stages/api.py", line 43, in __call__
pulp-worker_1 | await self.run()
pulp-worker_1 | File "/code/pulp_ansible/pulp_ansible/app/tasks/collections.py", line 274, in run
pulp-worker_1 | async for metadata in self._fetch_collections():
pulp-worker_1 | File "/code/pulp_ansible/pulp_ansible/app/tasks/collections.py", line 351, in _fetch_collections
pulp-worker_1 | [remote.get_downloader(url=result["versions_url"]).run()]
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/app/models/repository.py", line 288, in get_downloader
pulp-worker_1 | return self.download_factory.build(url, **kwargs)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/pulpcore/download/factory.py", line 140, in build
pulp-worker_1 | raise ValueError(_('URL: {u} not supported.'.format(u=url)))
pulp-worker_1 | ValueError: URL: /api/automation-hub/v3/collections/autohubtest2/collection_dep_a_jbkboxzc/versions/ not supported.
</code></pre>
<pre><code>
</code></pre> Ansible Plugin - Issue #5583 (CLOSED - DUPLICATE): Add methods/mixins to galaxy.v3.views.Collecti...https://pulp.plan.io/issues/55832019-10-16T19:48:17Zalikins
<p>pulp_ansible.app.galaxy.v3.views.CollectionViewSet needs to support a way to update it's 'deprecated' field.</p>
<p>See also <a href="https://github.com/ansible/galaxy-dev/issues/129" class="external">https://github.com/ansible/galaxy-dev/issues/129</a></p> Ansible Plugin - Issue #5572 (CLOSED - CURRENTRELEASE): pulp_ansible/app/tasks/collections.py:imp...https://pulp.plan.io/issues/55722019-10-15T17:33:25Zalikins
<pre><code>pulp-worker_1 | django.core.exceptions.FieldError: Cannot resolve keyword '_id' into field. Choices are: _artifacts, authors, collection, collection_id, content_ptr, content_ptr_id, contentartifact, contents, dependencies, description, docs_blob, documentation, homepage, is_certified, is_highest, issues, license, name, namespace, pulp_created, pulp_id, pulp_last_updated, pulp_type, repositories, repository, search_vector, tags, version, version_memberships
pulp-worker_1 | Traceback (most recent call last):
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/worker.py", line 822, in perform_job
pulp-worker_1 | rv = job.perform()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/job.py", line 605, in perform
pulp-worker_1 | self._result = self._execute()
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/rq/job.py", line 611, in _execute
pulp-worker_1 | return self.func(*self.args, **self.kwargs)
pulp-worker_1 | File "/code/pulp-ansible/pulp_ansible/app/tasks/collections.py", line 183, in import_collection
pulp-worker_1 | content_q = CollectionVersion.objects.filter(_id=collection_version.pk)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/manager.py", line 82, in manager_method
pulp-worker_1 | return getattr(self.get_queryset(), name)(*args, **kwargs)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/query.py", line 892, in filter
pulp-worker_1 | return self._filter_or_exclude(False, *args, **kwargs)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/query.py", line 910, in _filter_or_exclude
pulp-worker_1 | clone.query.add_q(Q(*args, **kwargs))
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/sql/query.py", line 1290, in add_q
pulp-worker_1 | clause, _ = self._add_q(q_object, self.used_aliases)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/sql/query.py", line 1318, in _add_q
pulp-worker_1 | split_subq=split_subq, simple_col=simple_col,
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/sql/query.py", line 1190, in build_filter
pulp-worker_1 | lookups, parts, reffed_expression = self.solve_lookup_type(arg)
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/sql/query.py", line 1049, in solve_lookup_type
pulp-worker_1 | _, field, _, lookup_parts = self.names_to_path(lookup_splitted, self.get_meta())
pulp-worker_1 | File "/venv/lib64/python3.6/site-packages/django/db/models/sql/query.py", line 1420, in names_to_path
pulp-worker_1 | "Choices are: %s" % (name, ", ".join(available)))
pulp-worker_1 | django.core.exceptions.FieldError: Cannot resolve keyword '_id' into field. Choices are: _artifacts, authors, collection, collection_id, content_ptr, content_ptr_id, contentartifact, contents, dependencies, description, docs_blob, documentation, homepage, is_certified, is_highest, issues, license, name, namespace, pulp_created, pulp_id, pulp_last_updated, pulp_type, repositories, repository, search_vector, tags, version, version_memberships
</code></pre> Ansible Plugin - Issue #5459 (CLOSED - CURRENTRELEASE): Response data from CollectionVersionViewS...https://pulp.plan.io/issues/54592019-09-17T16:00:00Zalikins
<p>The ansible-galaxy bug is at <a href="https://github.com/ansible/ansible/issues/62076" class="external">https://github.com/ansible/ansible/issues/62076</a></p>
<p>The response from CollectionVersionViewSet (GET GET<br>
/pulp/api/v3/content/ansible/collection_versions/ - <a href="https://pulp-ansible.readthedocs.io/en/latest/restapi.html#operation/content_ansible_collections_list" class="external">https://pulp-ansible.readthedocs.io/en/latest/restapi.html#operation/content_ansible_collections_list</a>)</p>
<p>has 'namespace' as a single string, where the ansible-galaxy client expect a dictionary.</p>
<p>Essentially, the 'namespace' value needs to be a dict with a 'name' key with the namespace string as value.</p>
<p>Current result (truncated for brevity)</p>
<pre><code class="json syntaxhl" data-language="json"><span class="p">{</span><span class="w">
</span><span class="err">#</span><span class="w"> </span><span class="err">...</span><span class="w">
</span><span class="nl">"namespace"</span><span class="p">:</span><span class="w"> </span><span class="s2">"alikins"</span><span class="p">,</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre>
<p>Exceptected</p>
<pre><code class="json syntaxhl" data-language="json"><span class="p">{</span><span class="w">
</span><span class="err">#</span><span class="w"> </span><span class="err">...</span><span class="w">
</span><span class="nl">"namespace"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="nl">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"alikins"</span><span class="p">},</span><span class="w">
</span><span class="p">}</span><span class="w">
</span></code></pre>
<p><a href="https://github.com/ansible/galaxy-api/compare/master...alikins:collection_version_detail_99_reopen" class="external">https://github.com/ansible/galaxy-api/compare/master...alikins:collection_version_detail_99_reopen</a> is an example workaround in galaxy-api that adds the data.</p>
<p>Note that branch also adds some fields to the "metadata" item that is missing, though I don't believe that impacts ansible-galaxy. It does make the result more inline with the galaxy v2 result however.</p> Ansible Plugin - Task #5368 (CLOSED - CURRENTRELEASE): Write galaxy-import result of contents and...https://pulp.plan.io/issues/53682019-08-28T21:11:22Zawcrosby
<p>The galaxy-importer result includes contents and docs_blob keys. The CollectionVersion model has attributes for these.</p>
<p>This data should be written when the galaxy-importer is called, in both the import_collection and sync workflows.</p> Ansible Plugin - Task #4571 (CLOSED - CURRENTRELEASE): Switch Travis installer to use Ansbile roleshttps://pulp.plan.io/issues/45712019-03-25T16:25:58Zamacdona@redhat.comaustin@redhat.com
<p>Using <a href="https://pulp.plan.io/issues/4312" class="external">https://pulp.plan.io/issues/4312</a>, specifically <a href="https://github.com/pulp/pulpcore/pull/41" class="external">https://github.com/pulp/pulpcore/pull/41</a> as a guide, install pulpcore, pulpcore-plugin, and pulp_ansible with the Ansible installer.</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> Ansible Plugin - Task #3495 (CLOSED - DUPLICATE): Add sync_mode parameter to endpoint that deploy...https://pulp.plan.io/issues/34952018-03-16T13:21:40Zamacdona@redhat.comaustin@redhat.com
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_ansible/678":<a href="https://github.com/pulp/pulp_ansible/issues/678" class="external">https://github.com/pulp/pulp_ansible/issues/678</a></p>
<hr>
<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>