<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Oct 23, 2017 at 11:06 AM, Jeff Ortel <span dir="ltr"><<a href="mailto:jortel@redhat.com" target="_blank">jortel@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"><span class="gmail-"><br>
On 10/23/2017 09:55 AM, Michael Hrivnak wrote:<br>
><br>
> A task status should not include an exhaustive list of every resource created. For example, a publish task<br>
> should not include a reference to every metadata artifact it made. It would be sufficient to include a<br>
> reference to the publication, the task's primary output, which then can be used to reference subordinate<br>
> resources.<br>
><br>
> On a task status representation, this could be included in a field called "created_resources", "output",<br>
> "return_value", or similar.<br>
<br>
</span>Tasks (status) are a transient mechanism used to accomplish work and should not be used to track resources<br>
created.  Once the task has completed, the user should be free to forget the task ID and be able to use<br>
natural keys to find and inspect resources that got created/updated.<br></blockquote><div><br></div><div>I'm also not sure what natural key a publication will be able to reliably have. If I publish the same repo three times, how do I know which publication resulted from each task? Or when a repo version is created by a sync, how would an end user know which version was created by the task they were monitoring?</div><div><br></div><div>Just as a 201 response should include a link to the resource that was created, a 202 should include a link to a resource that can monitor the status of the request to create something. Why would that status monitor not upon completion include a link to the resource that got created? It's fulfilling the same end goal that could otherwise be achieved from a 201 response, but with an asynchronous part of the workflow.</div></div><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><p style="color:rgb(0,0,0);font-family:overpass-mono,monospace;font-size:10px;margin:0px;padding:0px"><span style="margin:0px;padding:0px">Michael</span> <span style="margin:0px;padding:0px">Hrivnak</span></p><p style="color:rgb(0,0,0);font-family:overpass-mono,monospace;font-size:10px;margin:0px;padding:0px"></p><span style="color:rgb(0,0,0);font-family:overpass-mono,monospace;font-size:10px;margin:0px;padding:0px"><span style="margin:0px;padding:0px">Principal Software Engineer</span><span style="margin:0px;padding:0px">, <span style="margin:0px;padding:0px">RHCE</span></span> </span><span style="color:rgb(0,0,0);font-family:overpass-mono,monospace;font-size:10px"></span><br style="color:rgb(0,0,0);font-family:overpass-mono,monospace;font-size:10px;margin:0px;padding:0px"><p style="color:rgb(0,0,0);font-family:overpass-mono,monospace;font-size:10px;margin:0px;padding:0px">Red Hat</p></div></div>
</div></div>