Pulp: Issueshttps://pulp.plan.io/https://pulp.plan.io/favicon.ico2015-04-10T17:35:20ZPulp
Planio Debian Support - Refactor #878 (CLOSED - CURRENTRELEASE): Convert pulp_deb to use MongoEngine modelshttps://pulp.plan.io/issues/8782015-04-10T17:35:20Zbcourtbcourt@redhat.com
<p>Convert the pulp_deb to use MongoEngine models for all unit actions instead of the associated unit</p>
<p>Deliverables:</p>
<ul>
<li>ContentUnit model for docker_image units
<ul>
<li>The model is registered via the entry point</li>
<li>The types .json file is removed, and references to it in the spec files are are also removed</li>
</ul>
</li>
<li>All interactions with units in the plugin use the new unit model and the Repository model for creating, saving and updating units</li>
<li>Convert the model according to the <a href="https://fedorahosted.org/pulp/wiki/ConvertingModelsToMongoengine#StepsinvolvedinconvertingaPulpmodeltoMongoEngine" class="external">conversion guide</a>
</li>
</ul>
<p>Supported operations:</p>
<p>Milestone 1:</p>
<ul>
<li>Create repository to host deb packages</li>
<li>Add deb unit to deb repository (implementation detail: importer needs to work)</li>
<li>Publish apt repository (implementation detail: distributor needs to work)</li>
<li>Sign repository metadata within the distributor</li>
</ul>
<p>Milestone 2:</p>
<ul>
<li>Ability to sync a repo produced at milestone 1 (one dist, one component, one architecture)</li>
</ul>
<p>To be done later:</p>
<ul>
<li>Full mirror support - problematic for several reasons:
<ul>
<li>we need a way to keep track of which deb unit came from which dist/component/architecture</li>
<li>in order to not invalidate the repo metadata signature, we may have to save the repo metadata files and publish exactly those.</li>
</ul>
</li>
<li>Partial mirror
<ul>
<li>ability to specify a whitelist of dist/component/architecture combinations to be synced</li>
</ul>
</li>
</ul> Python Support - Refactor #877 (CLOSED - CURRENTRELEASE): convert pulp_python to use MongoEngine ...https://pulp.plan.io/issues/8772015-04-10T17:34:02Zbcourtbcourt@redhat.com
<p>Convert the pulp_python to use MongoEngine models for all unit actions instead of the associated unit</p>
<p>Deliverables:</p>
<ul>
<li>ContentUnit model for Package units
<ul>
<li>The model is registered via the entry point</li>
<li>The types .json file is removed, and references to it in the spec files are are also removed</li>
</ul>
</li>
<li>All interactions with units in the plugin use the new unit model and the Repository model for creating, saving and updating units</li>
<li>Convert the model according to the <a href="https://fedorahosted.org/pulp/wiki/ConvertingModelsToMongoengine#StepsinvolvedinconvertingaPulpmodeltoMongoEngine" class="external">conversion guide</a>
</li>
</ul> OSTree Support - Refactor #876 (CLOSED - CURRENTRELEASE): Convert pulp_ostree to use MongoEngine ...https://pulp.plan.io/issues/8762015-04-10T17:32:26Zbcourtbcourt@redhat.com
<p>Convert the pulp_ostree to use MongoEngine models for all unit actions instead of the associated unit</p>
<p>Deliverables:</p>
<ul>
<li>ContentUnit model for docker_image units
<ul>
<li>The model is registered via the entry point</li>
<li>The types .json file is removed, and references to it in the spec files are are also removed</li>
</ul>
</li>
<li>All interactions with units in the plugin use the new unit model and the Repository model for creating, saving and updating units</li>
</ul> Puppet Support - Refactor #875 (CLOSED - CURRENTRELEASE): Convert pulp_puppet to use MongoEngine ...https://pulp.plan.io/issues/8752015-04-10T17:31:24Zbcourtbcourt@redhat.com
<p>Convert the pulp_puppet to use MongoEngine models for all unit actions instead of the associated unit</p>
<p>Deliverables:</p>
<ul>
<li>ContentUnit model for docker_image units
<ul>
<li>The model is registered via the entry point</li>
<li>The types .json file is removed, and references to it in the spec files are are also removed</li>
</ul>
</li>
<li>All interactions with units in the plugin use the new unit model and the Repository model for creating, saving and updating units</li>
</ul> Pulp - Refactor #869 (CLOSED - WONTFIX): convert RepoUnitAssociationManager.unassociate_by_criter...https://pulp.plan.io/issues/8692015-04-10T16:02:55Zbcourtbcourt@redhat.com
<p>in RepoUnitAssociationManager.unassociate_by_criteria Add a switch that checks if all of the types on the repo have been converted to models then call branch to a new call the uses the the MongoEngine repo model to perform the delete and then calls the importer with the repo_content_unit objects.</p>
<p>Deliverables:</p>
<ul>
<li>a RepoUnitAssociationManager.unassociate_by_criteria that will use MongoEngine models if all the types in the given repo have been converted</li>
<li>This can use pulp_docker for testing</li>
</ul> Pulp - Refactor #868 (CLOSED - WONTFIX): Update RepoUnitAssociationManager.associate_from_repo to...https://pulp.plan.io/issues/8682015-04-10T15:59:48Zbcourtbcourt@redhat.com
<p>In RepoUnitAssociationManager.associate_from_repo Add a switch that checks if all of the types on the source and target repo have been converted to models then call branch to a new call the uses the MongoEngine repository models to perform the associate and then calls the importer with the repo_content_unit objects</p>
<p>Deliverables:</p>
<ul>
<li>A working version of associate_from_repo that will use either AssociatedUnits or MongoEngine models if all units within a repo support ME models</li>
<li>This can be tested with pulp_docker</li>
</ul> Pulp - Refactor #865 (CLOSED - CURRENTRELEASE): Create a SharedContentUnit that extends the Conte...https://pulp.plan.io/issues/8652015-04-10T15:43:25Zbcourtbcourt@redhat.com
<p>The SharedContentUnit provide generic support for the shared content pattern used by pulp_ostree</p>
<p>Deliverables:</p>
<ul>
<li>A base SharedContentUnit mongoengine model that implements the shared content pattern used by pulp_ostree</li>
</ul> Docker Support - Refactor #863 (CLOSED - CURRENTRELEASE): Convert pulp_docker to use MongoEngine ...https://pulp.plan.io/issues/8632015-04-10T15:32:38Zbcourtbcourt@redhat.com
<p>Convert the pulp_docker to use MongoEngine models for all unit actions instead of the associated unit</p>
<p>Deliverables:</p>
<ul>
<li>ContentUnit model for docker_image units
<ul>
<li>The model is registered via the entry point</li>
<li>The types .json file is removed, and references to it in the spec files are are also removed</li>
</ul>
</li>
<li>All interactions with units in the plugin use the new unit model and the Repository model for creating, saving and updating units</li>
</ul> Pulp - Refactor #862 (CLOSED - CURRENTRELEASE): Add unit association and querying support to the ...https://pulp.plan.io/issues/8622015-04-10T14:59:46Zbcourtbcourt@redhat.com
<p>Add the ability to query units via the Repository model</p>
<ul>
<li>Add method find_units(association_q, unit_q, limit, skip) that returns an iterable. This iterable yields repo_content_units with a 'unit' attribute on each item that is filled in by the find_units iterator(), if limit is unspecified all units will be returned, if skip is unspecified then the first batch will be returned</li>
<li>Add method add_unit(model) that creates/updates the repo_content_unit collection entry for the unit</li>
<li>Add method add_units(model_iterable) that creates/updates the repo_content_unit collection entry for every model in the iterable.</li>
<li>content_unit_counts should be updated automatically whenever units are added or removed from the repository</li>
<li>Add a method to remove_unit(unit_model) remove a unit by passing in the unit object.</li>
<li>Add a method to remove_units(association_qs, unit_qs) to remove units matching a filter.</li>
</ul> Pulp - Refactor #861 (CLOSED - CURRENTRELEASE): Convert usage of pulp.plugins.model.Repository to...https://pulp.plan.io/issues/8612015-04-10T14:35:44Zbcourtbcourt@redhat.com
<p>Convert all usage of the pulp.plugins.model.Repository object to use the Repository MongoEngine model</p>
<p>Deliverables:</p>
<ul>
<li>All usages of pulp.plugins.model.Repository are replaced with Repository MongoEngine model</li>
<li>All references to the pulp.plugins.model.Repository and the repo_transfer unit are removed</li>
</ul>
<p><a href="https://fedorahosted.org/pulp/wiki/ConvertingModelsToMongoengine#StepsinvolvedinconvertingaPulpmodeltoMongoEngine" class="external">conversion guide</a></p> Pulp - Refactor #853 (CLOSED - CURRENTRELEASE): Create the pulp.unit_models entry pointhttps://pulp.plan.io/issues/8532015-04-08T20:18:19Zbcourtbcourt@redhat.com
<p>Create a python entry point for 'pulp.unit_models' the entry points will be created in the format 'type_id=mongoengine.model.class'.</p>
<p>Upon platform initialization all the MongoEngine models should be loaded and have the appropriate signals attached to support setting the creation time, last_updated time, and moving content into the server content directory.</p>
<p>Deliverables:</p>
<ul>
<li>Entry point for the models ('pulp.unit_models')</li>
<li>Server loads the entry point during server initialization and keeps the map of models in memory</li>
<li>Platform method to get a model by type_id</li>
<li>When server registers a model from the entry point it ensures that the following signals are registered:
<ul>
<li>pulp.server.db.model.ContentUnit.post_init_signal</li>
<li>pulp.server.db.model.ContentUnit.pre_save_signal</li>
<li>pulp.server.db.model.ContentUnit.post_save_signal</li>
</ul>
</li>
<li>All models registered in this fashion have their indexes created by pulp-manage-db</li>
</ul> Pulp - Refactor #849 (CLOSED - CURRENTRELEASE): Remove the owner_type and owner_id from repo_cont...https://pulp.plan.io/issues/8492015-04-07T14:10:47Zbcourtbcourt@redhat.com
<p>The fields owner_type and owner_id are no longer used in the repo_content_units collection</p>
<ul>
<li>Remove them from the internal API calls</li>
<li>Remove them from the mongoengine indexes</li>
<li>Create a migration to remove them from the current repo_content_units table
<ul>
<li>The migration should validate that there are no entries in the database where (repo_id, unit_id) do not form a unique key. A manual update of the database will be required in that case.</li>
</ul>
</li>
</ul>
<p>These fields are not in our docs or examples, should not have been exposed by the API to begin with, and are not in known use today.</p> Pulp - Issue #640 (CLOSED - CURRENTRELEASE): Current master of nectar requires a newer version of...https://pulp.plan.io/issues/6402015-02-28T22:46:43Zbcourtbcourt@redhat.com
<p>Description:<br>
The current master branch of nectar will fail if run against python-requests 2.2.1. The dependency in pulp & nectar should be updated or the threaded downloader should be updated to not use the new python-requests api.</p>
<p>+ This bug was cloned from <a href="https://bugzilla.redhat.com/show_bug.cgi?id=1174283" class="external">Bugzilla Bug #1174283</a> +</p> Pulp - Task #85 (CLOSED - CURRENTRELEASE): Add automation to run unit tests for all PRs against p...https://pulp.plan.io/issues/852015-01-02T18:06:20Zbcourtbcourt@redhat.com
<p>Us the jenkins github pull request builder plugin to build all PRs against the core Pulp project automatically. This includes creating comments on the PRs indicating the success/failure of the test run.</p> Puppet Support - Story #83 (CLOSED - CURRENTRELEASE): As a user I can install puppet modules usin...https://pulp.plan.io/issues/832014-12-19T21:40:05Zbcourtbcourt@redhat.com
<p>As a user I can install a module using the puppet module install command line using the v3 forge api enumerated at <a href="https://forgeapi.puppetlabs.com/" class="external">https://forgeapi.puppetlabs.com/</a></p>
<p>This will entail creating a new /v3/releases endpoint. We will have to go back to the pre-puppet 3.3 method of determining the repository and consumer as the ability to specify a context root has been disabled.</p>
<p>The api now requires pagination, offset tracking, and providing the urls for the next/previous queries in the case of pagination.<br>
There are now many more options for filtering.</p>
<p>We will only have to support the /v3/releases endpoint at this time.</p>