Pulp: Issueshttps://pulp.plan.io/https://pulp.plan.io/favicon.ico2021-07-13T00:18:00ZPulp
Planio RPM Support - Test #9069 (CLOSED - DUPLICATE): Test "finding children" of PackageGroupshttps://pulp.plan.io/issues/90692021-07-13T00:18:00Zdalleydalley@redhat.com
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2283":<a href="https://github.com/pulp/pulp_rpm/issues/2283" class="external">https://github.com/pulp/pulp_rpm/issues/2283</a></p>
<hr>
<p>Test that the latest version of RPM children of PackageGroup content are copied when a PackageGroup is copied.</p>
<p>Test that if a particular package is already specified to be copied, that this package will be used instead of the latest version.</p> RPM Support - Test #9014 (CLOSED - DUPLICATE): Test "syncing" a repository from disk using a file...https://pulp.plan.io/issues/90142021-07-05T21:40:45Zdalleydalley@redhat.comRPM Support - Test #8973 (CLOSED - DUPLICATE): Add test for modular RPM detectionhttps://pulp.plan.io/issues/89732021-06-25T13:47:41Zdalleydalley@redhat.com
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2279":<a href="https://github.com/pulp/pulp_rpm/issues/2279" class="external">https://github.com/pulp/pulp_rpm/issues/2279</a></p>
<hr>
<p>Test that modular RPMs are indeed marked is_modular=True and vice versa</p> RPM Support - Test #8809 (CLOSED - DUPLICATE): Better tests for metadata mirroringhttps://pulp.plan.io/issues/88092021-05-24T19:54:30Zdalleydalley@redhat.com
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2277":<a href="https://github.com/pulp/pulp_rpm/issues/2277" class="external">https://github.com/pulp/pulp_rpm/issues/2277</a></p>
<hr>
<p>We need a fixture repository with some of the extra files, such as repomd.xml.asc (metadata signature), extra_files.json, .treeinfo, possibly licenses, multiple package directories / package locations, extra repomd entries that Pulp doesn't natively care about, etc. And then we need to test that mirroring works properly with such repos.</p> RPM Support - Test #8335 (CLOSED - DUPLICATE): Need a new fixture - advisory, same date/version, ...https://pulp.plan.io/issues/83352021-03-03T20:04:27Zggainey
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2268":<a href="https://github.com/pulp/pulp_rpm/issues/2268" class="external">https://github.com/pulp/pulp_rpm/issues/2268</a></p>
<hr>
<p><a href="https://pulp.plan.io/issues/8249" class="external">https://pulp.plan.io/issues/8249</a> changed the failure-case in advisory.resolve_advisory_conflict - need a fixture to reflect the failure-case, and an update to test_sync.py to re-enable test_sync_advisory_incomplete_pgk_list</p> RPM Support - Test #7893 (CLOSED - DUPLICATE): Test copy with modular packages name-shadowing non...https://pulp.plan.io/issues/78932020-11-24T05:32:05Zdalleydalley@redhat.com
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2259":<a href="https://github.com/pulp/pulp_rpm/issues/2259" class="external">https://github.com/pulp/pulp_rpm/issues/2259</a></p>
<hr>
<p>When a module includes a source RPM artifact as well as a transitive dependency with the same name, both the transitive dependency and all modular artifacts (including the source RPM if available) should be copied.</p>
<p>More details: <a href="https://bugzilla.redhat.com/show_bug.cgi?id=1809314" class="external">https://bugzilla.redhat.com/show_bug.cgi?id=1809314</a></p>
<p>We should generalize this with non-source packages as well. This is one of the problems with the Perl package, as it has both a nonmodular and modular version. As the modular version is not a default, we should ensure that the nonmodular version is copied and that the modular version isn't used to satisfy the dependency.</p>
<p>It's arguably OK if the modular version is copied <em>also</em>, so long as the nonmodular version is copied.</p> RPM Support - Test #7253 (CLOSED - DUPLICATE): Create new fixture and test to copy package enviro...https://pulp.plan.io/issues/72532020-07-31T14:23:53Zppicka
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2253":<a href="https://github.com/pulp/pulp_rpm/issues/2253" class="external">https://github.com/pulp/pulp_rpm/issues/2253</a></p>
<hr>
<p>Test to 'copy' with depsolving</p>
<ul>
<li>
<p>create fixture repository with one or more package environments (may extend rpm-unsigned)</p>
</li>
<li>
<p>test package environment is copied with deps</p>
</li>
<li>
<p>test package category is copied with deps (rpm-unsigned fixture can be used)</p>
</li>
</ul> RPM Support - Test #7134 (CLOSED - COMPLETE): Test against CDNhttps://pulp.plan.io/issues/71342020-07-14T13:59:20Zppicka
<p>When core issue <a href="https://pulp.plan.io/issues/6735" class="external">https://pulp.plan.io/issues/6735</a> is solved, lets add the test to sync against the CDN both baseos and appstream repositories.</p>
<p>This will test same repo meta data with different filename as same productid is shipped intentionally with both of mentioned repositories.</p>
<p>Also this test is testing using a certificates which are needed for CDN.</p> RPM Support - Test #7077 (CLOSED - DUPLICATE): Test sync using auth tokenhttps://pulp.plan.io/issues/70772020-07-02T13:36:52Zppicka
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2250":<a href="https://github.com/pulp/pulp_rpm/issues/2250" class="external">https://github.com/pulp/pulp_rpm/issues/2250</a></p>
<hr>
<p>Test sync repository with auth token</p>
<ul>
<li>sync with token & check if synced ok</li>
<li>sync with wrong token and check error message</li>
</ul>
<p>As this is test about authentication the repository to use will be <a href="https://fixtures.pulpproject.org/rpm-unsigned/" class="external">https://fixtures.pulpproject.org/rpm-unsigned/</a> (as all our fixtures can be used with [only one] auth token)</p> RPM Support - Test #6503 (CLOSED - COMPLETE): assert checksums for on_demand publicationhttps://pulp.plan.io/issues/65032020-04-15T17:17:25Zfao89
<p>we need to test publication behavior when setting: metadata_checksum_type and package_checksum_type for on demand publication</p>
<p>Note: mixing on_demand and immediate policies on the same test case could lead to intermittent failures</p> RPM Support - Test #6476 (CLOSED - DUPLICATE): Repomd compression behaves differently for S3https://pulp.plan.io/issues/64762020-04-09T19:15:52Zfao89
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2244":<a href="https://github.com/pulp/pulp_rpm/issues/2244" class="external">https://github.com/pulp/pulp_rpm/issues/2244</a></p>
<hr>
<p>on repomd we have:
primary.xml.gz
update_info.xml.gz
When testing xml.gz behaves like it is not compressed
On the other hand, it behaves as compressed on S3 testing<br>
<a href="https://github.com/pulp/pulp_rpm/blob/master/pulp_rpm/tests/functional/api/test_publish.py#L51-L67" class="external">https://github.com/pulp/pulp_rpm/blob/master/pulp_rpm/tests/functional/api/test_publish.py#L51-L67</a></p>
<pre><code class="python syntaxhl" data-language="python"><span class="k">def</span> <span class="nf">read_xml_gz</span><span class="p">(</span><span class="n">content</span><span class="p">):</span>
<span class="s">"""
Read xml and xml.gz.
Tests work normally but fails for S3 due '.gz'
Why is it only compressed for S3?
"""</span>
<span class="k">with</span> <span class="n">NamedTemporaryFile</span><span class="p">()</span> <span class="k">as</span> <span class="n">temp_file</span><span class="p">:</span>
<span class="n">temp_file</span><span class="p">.</span><span class="n">write</span><span class="p">(</span><span class="n">content</span><span class="p">)</span>
<span class="n">temp_file</span><span class="p">.</span><span class="n">seek</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span>
<span class="k">try</span><span class="p">:</span>
<span class="n">content_xml</span> <span class="o">=</span> <span class="n">gzip</span><span class="p">.</span><span class="nb">open</span><span class="p">(</span><span class="n">temp_file</span><span class="p">.</span><span class="n">name</span><span class="p">).</span><span class="n">read</span><span class="p">()</span>
<span class="k">except</span> <span class="nb">OSError</span><span class="p">:</span>
<span class="c1"># FIXME: fix this as in CI primary/update_info.xml has '.gz' but it is not gzipped
</span> <span class="n">content_xml</span> <span class="o">=</span> <span class="n">temp_file</span><span class="p">.</span><span class="n">read</span><span class="p">()</span>
<span class="k">return</span> <span class="n">content_xml</span>
</code></pre> RPM Support - Test #6427 (CLOSED - DUPLICATE): Publish tests for modulemd/modulemdhttps://pulp.plan.io/issues/64272020-03-31T19:59:18Zfao89
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2242":<a href="https://github.com/pulp/pulp_rpm/issues/2242" class="external">https://github.com/pulp/pulp_rpm/issues/2242</a></p>
<hr>
<ul>
<li>the final module.yaml should be compressed in repodata directory</li>
<li>no error if not all artifacts are present</li>
</ul> RPM Support - Test #6426 (CLOSED - DUPLICATE): Delete modulemd and its artifactshttps://pulp.plan.io/issues/64262020-03-31T19:56:37Zfao89
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2241":<a href="https://github.com/pulp/pulp_rpm/issues/2241" class="external">https://github.com/pulp/pulp_rpm/issues/2241</a></p>
<hr>
<p>delete all artifacts available, no error if not all artifacts are present</p> RPM Support - Test #6425 (CLOSED - DUPLICATE): Support compressed and uncompressed version of mod...https://pulp.plan.io/issues/64252020-03-31T19:50:25Zfao89
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2240":<a href="https://github.com/pulp/pulp_rpm/issues/2240" class="external">https://github.com/pulp/pulp_rpm/issues/2240</a></p> RPM Support - Test #6408 (CLOSED - DUPLICATE): Unit test for is_previous_revisionhttps://pulp.plan.io/issues/64082020-03-27T15:07:17Zfao89
<p><strong>Ticket moved to GitHub</strong>: "pulp/pulp_rpm/2239":<a href="https://github.com/pulp/pulp_rpm/issues/2239" class="external">https://github.com/pulp/pulp_rpm/issues/2239</a></p>
<hr>
<p><a href="https://github.com/pulp/pulp_rpm/blob/master/pulp_rpm/app/shared_utils.py#L35" class="external">https://github.com/pulp/pulp_rpm/blob/master/pulp_rpm/app/shared_utils.py#L35</a></p>
<p>is_previous_revision is utilized on sync optimization, we need to test if it could handle revisions in many formats (timestamp, string, None).</p>
<p>Compare revisions in many formats</p>
<pre><code class="python syntaxhl" data-language="python"><span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"3.0.0"</span><span class="p">,</span> <span class="s">"2.0.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"2.0.0"</span><span class="p">,</span> <span class="s">"3.0.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">True</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"2.0.0"</span><span class="p">,</span> <span class="s">"2.0.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">True</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="mi">1234</span><span class="p">,</span> <span class="mi">1235</span><span class="p">)</span> <span class="o">-></span> <span class="bp">True</span> <span class="c1">#timestamp
</span><span class="n">is_previous_revision</span><span class="p">(</span><span class="mi">1235</span><span class="p">,</span> <span class="mi">1234</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span> <span class="c1">#timestamp
</span><span class="n">is_previous_revision</span><span class="p">(</span><span class="mi">1235</span><span class="p">,</span> <span class="s">"2.0.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"2.0.0"</span><span class="p">,</span> <span class="mi">1235</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"3.1.0"</span><span class="p">,</span> <span class="s">"2.15.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"2.15.0"</span><span class="p">,</span> <span class="s">"3.1.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">True</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="s">"3.1.0"</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="s">"3.1.0"</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="bp">None</span><span class="p">,</span> <span class="mi">1234</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
<span class="n">is_previous_revision</span><span class="p">(</span><span class="mi">1235</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="o">-></span> <span class="bp">False</span>
</code></pre>
<p>pytest parametrize: <a href="http://doc.pytest.org/en/latest/example/parametrize.html#parametrizing-conditional-raising" class="external">http://doc.pytest.org/en/latest/example/parametrize.html#parametrizing-conditional-raising</a></p>