Project

Profile

Help

Pulp 3 Minimum Viable Product » History » Sprint/Milestone 7

Ichimonji10, 11/07/2016 04:50 PM
Request that a goal be clarified

1 1 bmbouter
# Pulp 3.0.0 Minimum Viable Product (MVP)
2
3
## Authentication
4
5
I can login with a username and password that Pulp stores  
6
I can CRUD a user  
7
I can list all users  
8
I can change the password of a user  
9
I can acquire a token to access the API  
10
I can invalidate all JWT tokens for a given user
11
12
## Repositories
13
14 2 Ichimonji10
I can list all repos  
15
I can CRUD a repository  
16
I can list associated importers and publishers  
17
I can list content in a repository  
18
I can summarize content in a repo (including counts)  
19
I can CRUD an importer  
20
I can CRUD a publisher
21 1 bmbouter
22
## Content Manipulation
23
24 4 Ichimonji10
I can sync an importer  
25
I can publish a publisher  
26
I can upload *(What to where?)*  
27
I can copy *(What from where to where?)*  
28
I can clean up orphans
29 1 bmbouter
30
## Filter
31
32 5 Ichimonji10
I can filter all nouns *(What is the meaning of "filter?" What is a noun?)*
33 1 bmbouter
34
## Task Management
35
36
I can list all tasks and filter them  
37
I can see a detail view for a specific task including its progress and results  
38
I can cancel tasks
39
40
## Task Group
41
42
I can view a summary of the status of all tasks in a group
43
44
## Event Listener Notifier
45
46
I can receive serialized task info via AMQP on each task save
47
48
## Status
49
50
I can view the status of all pulp components  
51
I can view an overall health attribute  
52
I can view information about unapplied migrations
53
54
## Plugin API
55
56
We will have one  
57
We will use one  
58
It will be semantically versioned at 0.x separate from the REST API
59
60 6 Ichimonji10
*Will this API be a Python code interface, a networked HTTP interface, or something else? In other words, for Pulp to use a plugin, will Pulp look for Python code, will it make HTTP calls to some networked resource, or something else?*
61
62
*What are three examples of plugins that will be written? (One goal is "we will use one," so presumably some specific plug-ins are already in mind.)*
63
64 1 bmbouter
## CLI
65
66 7 Ichimonji10
We will port what is there with as little effort as possible *(Does this mean that porting will be easy for developers, or that switching from the Pulp 2-3 CLI will be easy for users? If the former, isn't this an implementation detail that doesn't belong in an MVP document? If the latter, does this mean that we're going to carry forward the issues with pulp-admin, like a lack of status codes?)*  
67 1 bmbouter
repo CRUD  
68
CRUD for importers  
69
CRUD for publishers  
70
trigger syncs  
71
trigger publish  
72
list content in a repo  
73
upload  
74
server status  
75
list and cancel tasks  
76
authn via basic auth
77
78
## Nectar Plugin Download API
79
80
I can download files via HTTP, HTTPS  
81
I can download via file://  
82
Authentication parity with 2.y  
83
Recommend something for bandwidth limiting  
84
Verify integrity of downloaded files  
85
Alternate content source support  
86
Streamer parity with 2.y
87
88
## Consumer Applicability
89
90
Using consumer profiles and repo bindings I can compute applicability with 2.y parity  
91
Performance needs to be awesome
92
93
## ISO exports
94
95
Export a group of repos to a single iso
96
97
## Plugin compatibility
98
99
rpm will work with platform  
100
puppet will work with platform  
101
ostree will work with platform  
102
python will work with platform  
103
file_plugin will work with platform  
104
docker will work with platform
105
106
## Migrations
107
108
users can run an executable similar to pulp-manage-db that is not named pulp-manage-db