Project

Profile

Help

Task #110

closed

Create plan for reimplementing Unit model with mongoengine

Added by rbarlow about 9 years ago. Updated almost 5 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
High
Assignee:
Category:
-
Sprint/Milestone:
-
Start date:
Due date:
% Done:

100%

Estimated time:
Platform Release:
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
Pulp 2
Sprint:
March 2015
Quarter:

Description

This ticket is a draft for the moment, so we can take time and have discussion and think through what the best design is for the Unit class with mongoengine. Let's keep this notice at the top and [Draft] in the subject until we have the details worked out.

Objectives:

  • Ensure that every Unit has user_metadata.

Questions:

  1. Can the repo_content_unit collection be converted to mongoengine before the unit model?
  2. Can we support an environment where not all units are converted at once?
  3. How do we support the /types/ api endpoints with a mixture of non-unit & unit models?
  4. Can we load the models via entrypoints and deprecate the types.json?
  5. How does Nodes interact with the mongoengine unit models?
  6. Can we have base model classes that are used by the plugin?
  7. How do we deal with migrations to the unit models as we standardize?
  8. How do we deal with unit types that have no data on the filesystem?
  9. How do we deal with unit types that have a single file on the filesystem?
  10. How do we deal with unit types that have multiple files on the filesystem? For units with multiple files, what if they have very large numbers of files (for example, some yum repos nest entire additional repositories using the treeinfo file.
  11. How do we deal with unit types where multiple units share a single piece of content on the filesystem (ostree)?
  12. Can the unit model emulate the transfer unit such that we can replace the transfer units with the mongoengine model?

Deliverables:

  • a diagram of unit data modeling
  • a wiki describing the plan
  • a deep dive on the plan for the team

Results:

Wiki & Diagram can be found at: https://fedorahosted.org/pulp/wiki/ConvertingUnitsToMongoengine

Actions #1

Updated by bcourt about 9 years ago

  • Priority changed from Normal to High
Actions #2

Updated by bcourt about 9 years ago

This refactor task could be used to design the platform level changes required to support using mongoengine based unit models.

Actions #3

Updated by bmbouter about 9 years ago

  • Tags Sprint Candidate added
Actions #4

Updated by mhrivnak about 9 years ago

  • Tracker changed from Refactor to Task
  • Subject changed from [Draft] Reimplement our Unit model with mongoengine to Create plan for reimplementing Unit model with mongoengine
Actions #5

Updated by cduryee about 9 years ago

Does this story include investigating how to remove plugin units vs units, and associated data transfer code?

Actions #6

Updated by bcourt about 9 years ago

  • Description updated (diff)
Actions #7

Updated by bcourt about 9 years ago

  • Description updated (diff)
Actions #8

Updated by bcourt about 9 years ago

  • Description updated (diff)
Actions #9

Updated by mhrivnak about 9 years ago

  • Priority changed from High to Normal
Actions #10

Updated by mhrivnak about 9 years ago

  • Priority changed from Normal to High
Actions #11

Updated by bmbouter about 9 years ago

Can the deliverables include a diagram of the relational nature of the unit collections? That would help me understand any written plan better.

Actions #12

Updated by mhrivnak about 9 years ago

  • Description updated (diff)
Actions #13

Updated by bcourt about 9 years ago

  • Description updated (diff)
Actions #14

Updated by bmbouter about 9 years ago

  • Tags Groomed added
  • Tags deleted (Sprint Candidate)
Actions #15

Updated by bmbouter about 9 years ago

  • Tags Sprint Candidate added
Actions #16

Updated by bcourt about 9 years ago

  • Assignee set to bcourt
Actions #17

Updated by bcourt about 9 years ago

  • Status changed from NEW to ASSIGNED
Actions #18

Updated by bcourt about 9 years ago

  • % Done changed from 0 to 50
Actions #19

Updated by bcourt almost 9 years ago

  • Sprint/Milestone set to 14
  • % Done changed from 50 to 80

Remaining work is to get approval at the team meeting on April 2 and then build out all the stories & tasks required

Actions #20

Updated by bcourt almost 9 years ago

  • Description updated (diff)
Actions #21

Updated by bcourt almost 9 years ago

  • Status changed from ASSIGNED to CLOSED - CURRENTRELEASE
  • % Done changed from 80 to 100
Actions #22

Updated by bmbouter almost 9 years ago

  • Groomed set to Yes
  • Tags deleted (Groomed)
Actions #23

Updated by bmbouter almost 9 years ago

  • Sprint Candidate set to Yes
  • Tags deleted (Sprint Candidate)
Actions #25

Updated by bmbouter about 6 years ago

  • Sprint set to March 2015
Actions #26

Updated by bmbouter about 6 years ago

  • Sprint/Milestone deleted (14)
Actions #27

Updated by bmbouter almost 5 years ago

  • Tags Pulp 2 added

Also available in: Atom PDF