<html><body><div style="font-family: times new roman, new york, times, serif; font-size: 12pt; color: #000000"><div><br></div><div><br></div><hr id="zwchr"><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><b>From: </b>"Amye Scavarda" &lt;amye@redhat.com&gt;<br><b>To: </b>"Vijay Bellur" &lt;vbellur@redhat.com&gt;<br><b>Cc: </b>"Kaushal M" &lt;kshlmster@gmail.com&gt;, "Jonathan Holloway" &lt;jholloway@redhat.com&gt;, "Gluster Devel" &lt;gluster-devel@gluster.org&gt;<br><b>Sent: </b>Sunday, July 24, 2016 7:53:06 PM<br><b>Subject: </b>Re: [Gluster-devel] Proposing a framework to leverage existing Python unit test standards for our testing<br><div><br></div><div dir="ltr"><div><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jul 20, 2016 at 1:24 PM, Vijay Bellur <span dir="ltr">&lt;<a href="mailto:vbellur@redhat.com" target="_blank">vbellur@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 07/20/2016 08:43 AM, Kaushal M wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Wed, Jul 20, 2016 at 1:41 PM, Jonathan Holloway &lt;<a href="mailto:jholloway@redhat.com" target="_blank">jholloway@redhat.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Gluster-Devel,<br><br>
There's been some conversation about standard Python unit test formats (PyUnit, PyTest, Nose) and potentially leveraging a tool I've been working on (called Glusto) that wraps those standards as well as covers the fundamentals required of the DiSTAF framework. I'm reaching out to propose this to the Gluster-Devel Community for consideration.<br></blockquote><br>
Finally! I'd been waiting for ever wondering we would start discussing<br>
this in the community. Thanks for starting this Jonathan.<br><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Some of the primary features Glusto offers are:<br>
- Reads and writes yaml, json, and ini config file formats (including Ansible host files).<br>
- Provides SSH, RPyC, logging (w/ ANSI color support), configuration, templating (via Jinja), and simple REST methods.<br>
- Implements cartesian product combinations with standard PyUnit class format for the Gluster runs_on_volumes/runs_on_mounts/reuse-setup requirements.<br>
- Wraps the Python standard framework modules (PyUnit, PyTest, Nose) in a single command with a config file option.<br>
- Tests can also be run from the CLI, IDLE, or unittest savvy tools (e.g., Eclipse PyDev).<br>
- Glusto methods can also be used from IDLE for troubleshooting during development--as well as in scripts.<br>
- Allows for leveraging existing unit test features such as skip decorators, pytest markers, etc.<br></blockquote><br><br>
These all seem really good! I particularly like the idea of having the<br>
ability to use standard python test frameworks.<br><br>
Glusto is something that DiSTAF core would have become, just that it's now.<br>
The work done to get test generation working (cartesian products),<br>
also shows it's flexible as well.<br><br>
Glusto+DiSTAF libs seems to me will be a good combination.<br></blockquote>
<br></span>
Agree here.<span class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
I know this was a brief and high-level intro to Glusto. This is just to get the topic started, and we can cover details in discussion.<br></blockquote><br>
Having a demo of glusto would be nice. Even a recorded demo would be<br>
good as well.<br><br></blockquote>
<br></span>
+1. Can we schedule a demo of glusto over a hangout or bluejeans for the community?<br><br></blockquote><div>I would love to see a recorded demo for this. Jonathan, does this upcoming week work to review this, or should we put something on the calendars for next week?</div></div></div></div></blockquote><div><br></div><div>I've posted several videos on YouTube at the following links.</div><div>There are eight sections and then a combined full-length (really full) video.<br></div><div>There is a little bit of Unit Test covered in "3. Using Glusto Overview", but the "8. Running Unit Tests" shows more depth (sample PyUnit format w/ some PyTest, Gluster runs-on and reuse-setup example, filtering test runs, etc.).<br></div><div>If you're looking to skip around, you might start with "1. Intro, 2. Using Glusto Overview, and "8. Running Unit Tests"--then pick and choose from there.<br></div><div><br></div><div>1. Intro <a href="https://www.youtube.com/watch?v=IlG6Dl3CoxQ">https://www.youtube.com/watch?v=IlG6Dl3CoxQ</a> (1:28)<br>2. Installing <a href="https://www.youtube.com/watch?v=FPgWxFJT2TA">https://www.youtube.com/watch?v=FPgWxFJT2TA</a> (2:12)<br>3. Using Glusto Overview <a href="https://www.youtube.com/watch?v=SQYhyxJUrBc">https://www.youtube.com/watch?v=SQYhyxJUrBc</a> (7:39)<br>4. SSH <a href="https://www.youtube.com/watch?v=KBo6hGaiWpo">https://www.youtube.com/watch?v=KBo6hGaiWpo</a> (10:26)<br>5. RPyC <a href="https://www.youtube.com/watch?v=Ibp3YhFtofA">https://www.youtube.com/watch?v=Ibp3YhFtofA</a> (10:28)<br>6. Configs <a href="https://www.youtube.com/watch?v=DhUPqPOXMDY">https://www.youtube.com/watch?v=DhUPqPOXMDY</a> (8:44)<br>7. Logging <a href="https://www.youtube.com/watch?v=yf_tNHk88Ok">https://www.youtube.com/watch?v=yf_tNHk88Ok</a> (6:39)<br>8. Running Unit Tests <a href="https://www.youtube.com/watch?v=Cu_lZvEcn1w">https://www.youtube.com/watch?v=Cu_lZvEcn1w</a> (25:44)<br>Combined Sessions 1-8 <a href="https://www.youtube.com/watch?v=LtG2sjYAlFE">https://www.youtube.com/watch?v=LtG2sjYAlFE</a> (1:13:16)<br></div><div><br></div><div>I used a couple of docker images for each of the demos, so I'll record something on docker next week as well.</div><div>I didn't really tweak audio, so levels might hop around a bit. I opted to use all open source recording/editing tools for the first time (instead of the Mac *gasp*), so pardon my mess while I figure things out. :-)<br></div><div><br>Cheers,</div><div>Jonathan<br></div><blockquote style="border-left:2px solid #1010FF;margin-left:5px;padding-left:5px;color:#000;font-weight:normal;font-style:normal;text-decoration:none;font-family:Helvetica,Arial,sans-serif;font-size:12pt;"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>- amye&nbsp;</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thank you for posting about glusto. I look forward to checking out its capabilities.<br><br>
Regards,<br>
Vijay<div class="HOEnZb"><div class="h5"><br>
_______________________________________________<br>
Gluster-devel mailing list<br><a href="mailto:Gluster-devel@gluster.org" target="_blank">Gluster-devel@gluster.org</a><br><a href="http://www.gluster.org/mailman/listinfo/gluster-devel" rel="noreferrer" target="_blank">http://www.gluster.org/mailman/listinfo/gluster-devel</a><br></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Amye Scavarda | <a href="mailto:amye@redhat.com" target="_blank">amye@redhat.com</a> | Gluster Community Lead</div></div></div></div></blockquote><div><br></div></div></body></html>