<div dir="ltr">I updated the MVP doc with the changes[0] we discussed on the list and during a call we had earlier today. Below are the notes I captured during the call.<br><br><div><div><div><div><div><div> - remove default remote for a repository feature<br> - we are not implementing auto publish feature<br> - create an issue for removing auto_publish field from Publishers - <a href="https://pulp.plan.io/issues/3545">https://pulp.plan.io/issues/3545</a><br> - @asmacdo to create pulp-smash issue for auto distribution test<br> - removee old language about repo version add/remove/sync.<br></div><div> - add 3082 add to sprint<br> - remove Sync and Publish section all together<br></div> - remove both red statements about filtering provided by plugins<br></div><div> - make orphan cleanup text black and add 3442 to the sprint<br> - remove filtering by id and state from tasks and issue will be added for the minimal serializer<br><br></div><div>After the meeting I also updated the content unit deletion use case. It now states that the API 
always returns an error message. If content is not an orphan, the error 
provides list of repository versions. If content is an orphan, the error
 tells the user to run orphan cleanup. <br><br></div><br></div></div></div></div>[0] <a href="https://pulp.plan.io/projects/pulp/wiki/Pulp_3_Minimum_Viable_Product/diff?utf8=%E2%9C%93&version=153&version_from=152&commit=View+differences">https://pulp.plan.io/projects/pulp/wiki/Pulp_3_Minimum_Viable_Product/diff?utf8=%E2%9C%93&version=153&version_from=152&commit=View+differences</a><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 2, 2018 at 2:12 PM, Brian Bouterse <span dir="ltr"><<a href="mailto:bbouters@redhat.com" target="_blank">bbouters@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>I'm +1 to everything said here. I can clarify one thing regarding:<br><br>* <span class="m_4612851639858988676gmail-im">As a user, I have docs that when a new 
RepositoryVersion is created, add_many and remove_many are performed 
before any Plugin code is executed.</span><br><br></div>This is from before when the sync task was a core provided task. Then the design changes so tasks are all created by plugins and this was never updated. We should remove ^ line since Pulp doesn't allow the combination of add_many and remove_many w/ sync.<br><br></div>With all this agreement, editing the MVP as one edit and sending the diff link would be a transparent way to move forward the MVP doc changes.<br></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 2, 2018 at 1:58 PM, Austin Macdonald <span dir="ltr"><<a href="mailto:austin@redhat.com" target="_blank">austin@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span>On Fri, Mar 30, 2018 at 9:23 AM, David Davis <span dir="ltr"><<a href="mailto:daviddavis@redhat.com" target="_blank">daviddavis@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Sorry, I think the Importer and Publisher subclass user stories probably need to be updated to more accurately reflect how plugin writers implement syncing and publishing.</div><div class="gmail_extra"><span class="m_4612851639858988676m_-1091439957617245304gmail-HOEnZb"><font color="#888888"><br clear="all"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><br></div><div>David<br></div></div></div></div></div></div></div></div></font></span><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5">
<br><div class="gmail_quote">On Fri, Mar 30, 2018 at 9:20 AM, David Davis <span dir="ltr"><<a href="mailto:daviddavis@redhat.com" target="_blank">daviddavis@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">> As an authenticated user, I can define a default remote on a repo via href to be used whenever a new repo version is created.<div><br></div><div>I kind of have a proposal around this and I think we should ask Katello/users what they need. I’d propose leaving this off the MVP for now.</div><div><span style="color:rgb(34,34,34)"></span></div></div></blockquote></div></div></div></div></blockquote><div><br></div></span><div>+1, lets remove. Some optimization around this would be nice, but is not "minimum".</div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><span style="color:rgb(34,34,34)"> </span><br></div></div></blockquote></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div>> auto_publish(bool) - ??? consider adding auto-publish feature to MVP</div><div><br></div><div>I think we agreed to leave auto_publish out of the MVP but forgot to remove it from the doc.</div></div></blockquote></div></div></div></div></blockquote><div><br></div></span><div>If we do remove it, we should remove the field from the model/serializer also.</div><span><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>> As a user, my distribution base paths don't conflict and my create/update is rejected identifying the conflicting distributions</div><div><br></div><div>I’ve been working on this on my own time outside of work since it’s not on the sprint. I think I’ll have this soon.</div><div><br></div><div>> As a user, I want a newly created publication to be automatically served by the content as defined by distributions.</div><div><br></div><div>I think this works.</div></div></blockquote></div></div></div></div></blockquote><div><br></div></span><div>Yeah I think so too. <a href="https://github.com/pulp/pulp/blob/3.0-dev/pulpcore/pulpcore/app/models/publication.py#L107-L112" target="_blank">https://github.com/pulp/pulp/b<wbr>lob/3.0-dev/pulpcore/pulpcore/<wbr>app/models/publication.py#<wbr>L107-L112</a> </div><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>> As an authenticated user, I have filters on the Distribution list [3082]</div><div><br></div><div>I raised this issue at the sprint planning before the beta feature freeze but we agreed not to address it/add it to the sprint. I can’t remember why though.</div><div><br></div><div>> I cannot pass "sync" options. </div><div>> Auto-publish is not included as an importer property.</div><div>> I cannot pass "publish" options.</div><div><br></div><div>We don’t validate extraneous parameters. These might be just to emphasize that we’re not supporting this for now. I wouldn’t mind removing them from the MVP.</div><div><br></div></div></blockquote></div></div></div></div></blockquote></span><div>+1, let's remove. </div><span><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div><div>> Content unit deletion needs to be race condition free.</div><div><br></div><div>Covered by <a href="https://pulp.plan.io/issues/3445" target="_blank">https://pulp.plan.io/issues<wbr>/3445</a> </div></div></blockquote></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>> As an authenticated user, I can filter Content by repository version information when plugin writers have provided such a filter </div></div></blockquote></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>> As an authenticated user, I can filter content on plugin specific attributes when plugin writers have provided such a filter</div></div></blockquote></div></div></div></div></blockquote><div><br></div></span><div>This is a plugin feature, we should remove from the MVP. The plugin defines a content viewset, which specifies its own filters. </div><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>This is outstanding work. I think we need someone that can lead this and design out how it should work.</div></div></blockquote></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>> As a user, I have docs that when a new RepositoryVersion is created, add_many and remove_many are performed before any Plugin code is executed.</div><div><br></div><div>Not sure I understand this one.</div></div></blockquote></div></div></div></div></blockquote><div><br></div></span><div>This is the "docs" solution to <a href="https://pulp.plan.io/issues/3541" target="_blank">https://pulp.plan.io/issues<wbr>/3541</a></div><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>> As an authenticated user, I can cause an action that cleans up both orphaned content units and orphaned artifacts.</div><div><br></div><div>Covered by <a href="https://pulp.plan.io/issues/3442" target="_blank">https://pulp.plan.io/issues/34<wbr>42</a>.</div><div><br></div><div> > As a plugin writer, I can provide a subclassed Importer. The importer's responsibility is to synchronize the content of a Pulp repository with the content of a remote repository. (a circular import problem needs to be discussed and may cause this to change)</div><div>> As a plugin writer, I can provide a subclassed Publisher. The publisher's responsibility is to publish content. (a circular import problem needs to be discussed and may cause this to change)</div><div><br></div><div>AFAIK, I think these are done.</div></div></blockquote></div></div></div></div></blockquote><div><br></div></span><div>These lines should be:</div><div>As a plugin writer, I can provide a subclassed Remote. The Remote's responsibility is to store all of the information necessary to communicate with an external source of content. (The rest is handled by the "sync" task, not the remote)</div><span><div>As a plugin writer, I can provide a subclassed Publisher.</div><div> <br></div></span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><span><div>> As a plugin writer, I expect units that are missing from the remote repository to not be created in Pulp when using the immediate download policy.</div><div>> As a plugin writer, I expect units that are missing from the remote repository to be created in Pulp when using background or on_demand download policies.</div><div><br></div><div>These seem backwards to me. If we’re not doing lazy sync in the MVP (and I don’t think we are) then we should probably just remove them.</div><div><br></div></span></div></blockquote></div></div></div></div></blockquote><div>+1, lets remove this this from the MVP </div><span><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_extra"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-h5"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div></div></div><div class="gmail_extra"><br clear="all"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669m_-5810586841526624171gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><br></div><div>David<br></div></div></div></div></div></div></div></div>
<br><div class="gmail_quote"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669h5">On Thu, Mar 29, 2018 at 7:10 PM, Dennis Kliban <span dir="ltr"><<a href="mailto:dkliban@redhat.com" target="_blank">dkliban@redhat.com</a>></span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669h5"><div dir="ltr">Kersom and I spent the afternoon going over the REST
 API features described in the MVP[0] document. We discovered that a few
 features are poorly worded and a few features have not been 
implemented. All these items are now written in red. We need to do 2 things:<br><div><div><div><div><div><div><div><div><div><div><br></div>    - fix the language where it is not clear or completely remove it <br></div>    - remove features from the MVP document that we don't intend to include in the 3.0 release<br></div></div><br></div>Please reply with feedback about items in red related to the REST API (e.g. As a user, ....). <br><br></div>We should perform a separate gap analysis for the Plugin API. <br><div><br><br><div><div><div><div>[0] <a href="https://pulp.plan.io/projects/pulp/wiki/Pulp_3_Minimum_Viable_Product" target="_blank">https://pulp.plan.io/projects/<wbr>pulp/wiki/Pulp_3_Minimum_Viabl<wbr>e_Product</a><span class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669m_-5810586841526624171HOEnZb"><font color="#888888"><br></font></span></div></div></div></div></div><span class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669m_-5810586841526624171HOEnZb"><font color="#888888"><br></font></span></div><span class="m_4612851639858988676m_-1091439957617245304gmail-m_-327462534702602669m_-5810586841526624171HOEnZb"><font color="#888888"><div> - Dennis <br></div></font></span></div></div></div></div>
<br></div></div>______________________________<wbr>_________________<br>
Pulp-dev mailing list<br>
<a href="mailto:Pulp-dev@redhat.com" target="_blank">Pulp-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/pulp-dev" rel="noreferrer" target="_blank">https://www.redhat.com/mailman<wbr>/listinfo/pulp-dev</a><br>
<br></blockquote></div><br></div>
</blockquote></div><br></div></div></div>
<br>______________________________<wbr>_________________<br>
Pulp-dev mailing list<br>
<a href="mailto:Pulp-dev@redhat.com" target="_blank">Pulp-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/pulp-dev" rel="noreferrer" target="_blank">https://www.redhat.com/mailman<wbr>/listinfo/pulp-dev</a><br>
<br></blockquote></span></div><br></div></div>
<br>______________________________<wbr>_________________<br>
Pulp-dev mailing list<br>
<a href="mailto:Pulp-dev@redhat.com" target="_blank">Pulp-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/pulp-dev" rel="noreferrer" target="_blank">https://www.redhat.com/mailman<wbr>/listinfo/pulp-dev</a><br>
<br></blockquote></div><br></div>
</div></div><br>______________________________<wbr>_________________<br>
Pulp-dev mailing list<br>
<a href="mailto:Pulp-dev@redhat.com">Pulp-dev@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/pulp-dev" rel="noreferrer" target="_blank">https://www.redhat.com/<wbr>mailman/listinfo/pulp-dev</a><br>
<br></blockquote></div><br></div>