Project

Profile

Help

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

Ichimonji10, 11/07/2016 05:01 PM
Suggest that the CLI's capabilities be stated differently

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 8 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
68 1 bmbouter
repo CRUD  
69
CRUD for importers  
70
CRUD for publishers  
71
trigger syncs  
72
trigger publish  
73
list content in a repo  
74
upload  
75
server status  
76
list and cancel tasks  
77 8 Ichimonji10
authn via basic auth  
78
*(Should the supported set of operations be stated in terms of "The capabilities listed in the 'Authenctication,' 'Repositories,' and 'Filter' sections will be supported by the CLI."?)*
79 1 bmbouter
80
## Nectar Plugin Download API
81
82
I can download files via HTTP, HTTPS  
83
I can download via file://  
84
Authentication parity with 2.y  
85
Recommend something for bandwidth limiting  
86
Verify integrity of downloaded files  
87
Alternate content source support  
88
Streamer parity with 2.y
89
90
## Consumer Applicability
91
92
Using consumer profiles and repo bindings I can compute applicability with 2.y parity  
93
Performance needs to be awesome
94
95
## ISO exports
96
97
Export a group of repos to a single iso
98
99
## Plugin compatibility
100
101
rpm will work with platform  
102
puppet will work with platform  
103
ostree will work with platform  
104
python will work with platform  
105
file_plugin will work with platform  
106
docker will work with platform
107
108
## Migrations
109
110
users can run an executable similar to pulp-manage-db that is not named pulp-manage-db