<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, May 18, 2018 at 3:54 PM, Dana Walker <span dir="ltr"><<a href="mailto:dawalker@redhat.com" target="_blank">dawalker@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"><span class="gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br><div bgcolor="#FFFFFF"><font face="DejaVu Sans">The pulp-admin CLI provided value not because it combined things
but because it managed auth and reduced syntax complexity. <br>
</font><div><div class="gmail-m_6292584989920754399gmail-adm"><div id="gmail-m_6292584989920754399gmail-q_1637464ba634afd1_1" class="gmail-m_6292584989920754399gmail-ajR gmail-m_6292584989920754399gmail-h4"><div class="gmail-m_6292584989920754399gmail-ajT"></div></div></div></div></div></blockquote><div><br></div></span><div>Here's a (perhaps naive, please humor me) question--does it reduce syntax complexity enough over httpie to bother with at all? Now that we have a Django app, would most users either a) be comfortable enough with the REST API or b) prefer to see an actual Django web UI instead of the CLI?<br><br></div></div></blockquote><div><br></div><div>Most users of the CLI would probably prefer a UI. In situations where the UI is limiting the interaction possibilities, the user would probably prefer to use the REST API directly or via bindings for the language of their choice. <br><br></div><div>With that in mind, I think it is worth exploring adding the Django Admin[0] site to Pulp. We could perform just a little bit of configuration and expose all the models we are interested in exposing. The hard part would creating templates for the sync and publish workflows. <br></div><div><br>[0] <a href="https://docs.djangoproject.com/en/2.0/ref/contrib/admin/">https://docs.djangoproject.com/en/2.0/ref/contrib/admin/</a><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 dir="ltr"><div></div><div>Just curious about the typical users.<br></div></div><div class="gmail_extra"><span class="gmail-"><br clear="all"><div><div class="gmail-m_6292584989920754399gmail_signature"><div dir="ltr"><div>
<p style="font-weight:bold;margin:0px;padding:0px;font-size:14px;text-transform:uppercase"><span>Dana</span> <span>Walker</span></p>
<p style="font-weight:normal;font-size:10px;margin:0px 0px 4px;text-transform:uppercase"><span>Associate Software Engineer</span><span style="font-weight:normal;color:rgb(170,170,170);margin:0px"></span></p>
<p style="font-weight:normal;margin:0px;font-size:10px;color:rgb(153,153,153)"><a style="color:rgb(0,136,206);font-size:10px;margin:0px;text-decoration:none;font-family:"overpass",sans-serif" href="https://www.redhat.com" target="_blank">Red Hat <span><br><br></span></a></p>
<table border="0"><tbody><tr><td width="100px"><a href="https://red.ht/sig" target="_blank"> <img src="https://www.redhat.com/files/brand/email/sig-redhat.png" width="90" height="auto"></a> </td>
</tr></tbody></table>
</div></div></div></div>
<br></span><div><div class="gmail-h5"><div class="gmail_quote">On Fri, May 18, 2018 at 1:30 PM, 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">
<div bgcolor="#FFFFFF">
<font face="DejaVu Sans">The main goal of the CLI is to make it
easier (</font><font face="DejaVu Sans"><font face="DejaVu Sans">than
using the REST API and http)</font> for admins to perform
routine tasks. It seems likely that A CLI <i>could</i> provide
an improvement by reducing the REST syntax complexity without
combining the steps to complete a task. Also, I think we should
consider the frequency of tasks & steps. For example: I would
anticipate that work flows involving creating and deleting of
repositories, remotes, publishers and distributions are performed
with relatively low frequency. And, each of those will likely
happen with different frequency. Work flows involving sync &
publish would be performed with relatively high frequency.
Updating resources (perhaps except Distribution) don't seem likely
to be a regular thing.<br>
<br>
My point is: I think that providing high level, task oriented,
combination CLI commands won't provide enough value to justify the
effort. An admin running (1) complex command (think pulp-admin)
rather than 3-4 simple commands does not seem like an
improvement. Especially since the CLI would probably need to
provide the simple commands a well for work flows not accounted
for. For example: Edit a remote. Or, would the admin need to use
the REST API for that?<br>
<br>
The pulp-admin CLI provided value not because it combined things
but because it managed auth and reduced syntax complexity. <br>
</font><div><div class="gmail-m_6292584989920754399h5"><font size="-1"><font face="DejaVu Sans"> </font></font><br>
<br>
<div class="gmail-m_6292584989920754399m_-7429217834541877616moz-cite-prefix">On 05/17/2018 10:52 AM, Dennis Kliban
wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">
<div>
<div>
<div>
<div>The use cases we outlined earlier provide very little
value over using httpie to interact with the REST API
directly. I'd like to propose 5 new use cases:<br>
<ul>
<li>As a CLI user, I can create a repository, a
remote, a publisher, and a distribution with a
single command.</li>
<li>As a CLI user, I can create a repository version,
a publication, and update the distribution with a
single command.</li>
<li>As a CLI user, I can list remote types available
on the Pulp server.</li>
<li>As a CLI user, I can list publisher types
available on the Pulp server.</li>
<li>As a CLI user, I can list all repositories
available on the Pulp server. <br>
</li>
</ul>
<br>
The use cases proposed at the beginning on this thread
require the user to perform 4 steps before any content
can be synced:<br>
<br>
</div>
1) Create repository<br>
</div>
2) Create remote<br>
</div>
3) Create publisher<br>
</div>
4) Create distribution <br>
<div class="gmail_extra"><br>
</div>
<div class="gmail_extra">The goal for the CLI should be to
reduce this to a single step. The CLI will need to make some
assumptions for the user: publisher name, distribution name,
auto publish, auto distribute, and maybe others. However, this
will allow the user to use a single command to create a
repository that's ready for sync/publish.<br>
<br>
</div>
<div class="gmail_extra">Sync/Publish/Distribute workflow can
also be 3 steps:<br>
<br>
</div>
<div class="gmail_extra">1) Create a new repository version<br>
</div>
<div class="gmail_extra">2) Create a new publication<br>
</div>
<div class="gmail_extra">3) Update distribution<br>
<br>
</div>
<div class="gmail_extra">The goal here is to also reduce this to
a single step. <br>
<br>
</div>
<div class="gmail_extra">The other use cases are auxiliary.<br>
<br>
</div>
<div class="gmail_extra">Questions? Thoughts? Ideas? <br>
<br>
</div>
<div class="gmail_extra">-Dennis<br>
</div>
<div class="gmail_extra"><br>
</div>
<br>
<div class="gmail_extra"><br>
<br>
<br>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, May 14, 2018 at 11:58 AM,
Dana Walker <span dir="ltr"><<a href="mailto:dawalker@redhat.com" target="_blank">dawalker@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">+1<br>
</div>
<div class="gmail_extra"><br clear="all">
<div>
<div class="gmail-m_6292584989920754399m_-7429217834541877616m_52532154587299881gmail_signature">
<div dir="ltr">
<div>
<p style="font-weight:bold;margin:0px;padding:0px;font-size:14px;text-transform:uppercase"><span>Dana</span>
<span>Walker</span></p>
<p style="font-weight:normal;font-size:10px;margin:0px 0px 4px;text-transform:uppercase"><span>Associate
Software Engineer</span><span style="font-weight:normal;color:rgb(170,170,170);margin:0px"></span></p>
<p style="font-weight:normal;margin:0px;font-size:10px;color:rgb(153,153,153)"><a style="color:rgb(0,136,206);font-size:10px;margin:0px;text-decoration:none;font-family:"overpass",sans-serif" href="https://www.redhat.com" target="_blank">Red
Hat <span><br>
<br>
</span></a></p>
<table border="0">
<tbody>
<tr>
<td width="100px"><a href="https://red.ht/sig" target="_blank">
<img src="https://www.redhat.com/files/brand/email/sig-redhat.png" width="90" height="auto"></a> </td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<br>
<div class="gmail_quote">
<div>
<div class="gmail-m_6292584989920754399m_-7429217834541877616h5">On Tue, May 8, 2018 at 10:31 AM,
Jeremy Audet <span dir="ltr"><<a href="mailto:jaudet@redhat.com" target="_blank">jaudet@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="gmail-m_6292584989920754399m_-7429217834541877616h5">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><span>
<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">
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span><span style="font-size:12.8px">A
configuration file in the
user's home dir, right?</span></span><br>
<span></span></blockquote>
<span>
<div><span style="font-size:12.8px"><br>
</span></div>
</span>
<div><span style="font-size:12.8px">Yes,
exactly.</span></div>
</div>
</blockquote>
<div><br>
</div>
</span>
<div>Can we make sure to avoid placing
configuration files directly in users
home directories, and instead place them
into directories like ~/.config? This is
in line with the <a href="https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html" target="_blank">XDG
Base Directory Specification</a>. The
spec is pretty straightforward, but Pulp
Smash uses <a href="https://www.freedesktop.org/wiki/Software/pyxdg/" target="_blank">pyxdg</a>
to avoid mistakes. There's two big
benefits to doing this:<br>
</div>
<div>
<ul>
<li>Less clutter in home directories.</li>
<li>Guidance on what to do with other
types of files, such as cached files
and runtime files.</li>
</ul>
<p>Projects such as git, htop, lftp,
mpd, neovim, tmuxinator, boybo, and
more do this.<br>
</p>
</div>
</div>
</div>
</div>
<br>
</div>
</div>
<span>______________________________<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>
</span></blockquote>
</div>
<br>
</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>
<br>
<fieldset class="gmail-m_6292584989920754399m_-7429217834541877616mimeAttachmentHeader"></fieldset>
<br>
<pre>______________________________<wbr>_________________
Pulp-dev mailing list
<a class="gmail-m_6292584989920754399m_-7429217834541877616moz-txt-link-abbreviated" href="mailto:Pulp-dev@redhat.com" target="_blank">Pulp-dev@redhat.com</a>
<a class="gmail-m_6292584989920754399m_-7429217834541877616moz-txt-link-freetext" href="https://www.redhat.com/mailman/listinfo/pulp-dev" target="_blank">https://www.redhat.com/mailman<wbr>/listinfo/pulp-dev</a>
</pre>
</blockquote>
<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></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></div>