<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Feb 10, 2017 at 10:07 AM, Martin Sivak <span dir="ltr">&lt;<a href="mailto:msivak@redhat.com" target="_blank">msivak@redhat.com</a>&gt;</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">I am using copr for building mom for a single reason. We have no<br>
distgit equivalent where I would be able to mark an arbitrary git hash<br>
as a release (using my tag and branch structure) and so copr gives me<br>
the package release experience I want. Otherwise Jenkins would be fine<br>
with me.<br>
<br>
If we are getting closer to something like that then great and I will<br>
use it when it is ready.<br></blockquote><div><br></div><div>I think you already can do that.</div><div>When you want to build for a release you can create automation/mom.spec</div><div>and change automaton/build-artifacts.sh</div><div>to just:</div><div>spectool -g automation/mom.spec</div><div><div>rpmbuild \</div><div>    -ba \</div><div>    --define=&quot;_sourcedir ${PWD}&quot; \</div><div>    --define=&quot;_srcrpmdir ${PWD}&quot; \</div><div>    --define=&quot;_rpmdir ${PWD}&quot; \</div><div>    automation/mom.spec</div></div><div><br></div><div>instead of</div><div><br></div><div><div>./autogen.sh</div><div>./configure --prefix=/usr</div><div>make dist</div><div>rpmbuild -ta *.tar.gz</div></div><div><br></div><div>when jenkins will run it will build like in copr.</div><div><br></div><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">
<span class="gmail-HOEnZb"><font color="#888888"><br>
Martin<br>
</font></span><div class="gmail-HOEnZb"><div class="gmail-h5"><br>
On Fri, Feb 10, 2017 at 9:57 AM, Sandro Bonazzola &lt;<a href="mailto:sbonazzo@redhat.com">sbonazzo@redhat.com</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt; On Sun, Feb 5, 2017 at 6:25 PM, Nir Soffer &lt;<a href="mailto:nsoffer@redhat.com">nsoffer@redhat.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Sun, Feb 5, 2017 at 11:33 AM, Martin Sivak &lt;<a href="mailto:msivak@redhat.com">msivak@redhat.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; A repo where I do not have commit rights means I can&#39;t take full<br>
&gt;&gt; &gt;&gt; responsibility.<br>
&gt;&gt; &gt;&gt; A repo that is not atomically synchronized with my sources means I<br>
&gt;&gt; &gt;&gt; can&#39;t take full responsibility.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Having said that, I would be perfectly fine with a single repository<br>
&gt;&gt; &gt; that tracks the release configuration, but only if it also held the<br>
&gt;&gt; &gt; git repository link and hash/branch name that is supposed to be<br>
&gt;&gt; &gt; released. It would be in some way a &quot;distgit repo&quot;. Something like<br>
&gt;&gt; &gt; Sandro has for builds.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; [ovirt-4.0.x-ci]<br>
&gt;&gt; &gt; git://<a href="http://gerrit.ovirt.org/project.git#ovirt-4.0.x" rel="noreferrer" target="_blank">gerrit.ovirt.org/<wbr>project.git#ovirt-4.0.x</a><br>
&gt;&gt; &gt; git://<a href="http://gerrit.ovirt.org/project2.git#v4.0.x" rel="noreferrer" target="_blank">gerrit.ovirt.org/<wbr>project2.git#v4.0.x</a><br>
&gt;&gt; &gt; git://<a href="http://github.com/Me/repo#master" rel="noreferrer" target="_blank">github.com/Me/repo#<wbr>master</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; [ovirt-4.0.6]<br>
&gt;&gt; &gt; git://<a href="http://gerrit.ovirt.org/project.git#ovirt-4.0.6" rel="noreferrer" target="_blank">gerrit.ovirt.org/<wbr>project.git#ovirt-4.0.6</a><br>
&gt;&gt; &gt; git://<a href="http://gerrit.ovirt.org/project2.git#v4.0.6" rel="noreferrer" target="_blank">gerrit.ovirt.org/<wbr>project2.git#v4.0.6</a><br>
&gt;&gt; &gt; <a href="http://github.com/Me/repo/releases/x.y.z.zip" rel="noreferrer" target="_blank">http://github.com/Me/repo/<wbr>releases/x.y.z.zip</a><br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Any release would then be reviewed by the CI team and that would be<br>
&gt;&gt; &gt; fine for me. It would allow any branch name or versioning convention<br>
&gt;&gt; &gt; and would not pollute the sources. It would also be gerrit agnostic.<br>
&gt;&gt;<br>
&gt;&gt; Well said!<br>
&gt;&gt;<br>
&gt;&gt; May pain points with jenkins project:<br>
&gt;&gt;<br>
&gt;&gt; - No documentation<br>
&gt;&gt; - The format is not stable, each time you edit the format is different<br>
&gt;&gt; - No way to test changes, only infra guys can test changes, sometimes<br>
&gt;&gt;   even infra guys cannot test changes and they simply merge them<br>
&gt;&gt;   for testing<br>
&gt;&gt; - The project format is full of duplication<br>
&gt;&gt; - No commit right, cannot be responsible for something I cannot change<br>
&gt;&gt;<br>
&gt;&gt; Compare with travis:<br>
&gt;&gt;<br>
&gt;&gt; - Everting defined in *my* project in .travis.yml<br>
&gt;&gt; - Configuration format is well documented<br>
&gt;&gt;   <a href="https://docs.travis-ci.com/" rel="noreferrer" target="_blank">https://docs.travis-ci.com/</a><br>
&gt;&gt; - Configuration format is well designed, can do lot of work with very<br>
&gt;&gt;   little configuration<br>
&gt;&gt;   For example - this yaml define matrix of 3 builds:<br>
&gt;&gt;   <a href="https://github.com/oVirt/vdsm/blob/master/.travis.yml" rel="noreferrer" target="_blank">https://github.com/oVirt/vdsm/<wbr>blob/master/.travis.yml</a><br>
&gt;&gt; - Easy to test changes before merging (push to your fork on github)<br>
&gt;&gt; - Very nice web ui, e.g.<br>
&gt;&gt;   <a href="https://travis-ci.org/oVirt/vdsm/builds/198571421" rel="noreferrer" target="_blank">https://travis-ci.org/oVirt/<wbr>vdsm/builds/198571421</a><br>
&gt;&gt;   <a href="https://travis-ci.org/oVirt/vdsm/jobs/198571422" rel="noreferrer" target="_blank">https://travis-ci.org/oVirt/<wbr>vdsm/jobs/198571422</a><br>
&gt;&gt;<br>
&gt;<br>
&gt; I&#39;ve no strong feelings on this subject. I personally don&#39;t know travis so I<br>
&gt; can&#39;t compare it to anything else.<br>
&gt; I&#39;m a jenkins Standard-CI user and I tend to be happy with what we have.<br>
&gt; That said, despite I would prefer all ovirt projects to be aligned with the<br>
&gt; same workflow, I&#39;m perfectly fine with whatever CI testing / building system<br>
&gt; is implemented or used for each project provided that:<br>
&gt; - it works<br>
&gt; - it produces rpms which can be added to ovirt-system-test for functional<br>
&gt; testing<br>
&gt; - it produces source archives which can be published on release<br>
&gt; - it produces rpms which can be installed on release for all supported<br>
&gt; platforms and arches.<br>
&gt; - it doesn&#39;t require creative ways to get artifacts to be released<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt; Nir<br>
&gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Martin<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Sun, Feb 5, 2017 at 10:17 AM, Martin Sivak &lt;<a href="mailto:msivak@redhat.com">msivak@redhat.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; Hi,<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; The fact that this is specified in the &#39;jenkins&#39; repo **does not place<br>
&gt;&gt; &gt;&gt;&gt; this outside the maintainers` responsibility**.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; A repo where I do not have commit rights means I can&#39;t take full<br>
&gt;&gt; &gt;&gt; responsibility.<br>
&gt;&gt; &gt;&gt; A repo that is not atomically synchronized with my sources means I<br>
&gt;&gt; &gt;&gt; can&#39;t take full responsibility.<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; We actually have an initiative to move this information to the project<br>
&gt;&gt; &gt;&gt;&gt; repos. I&#39;ve started with asking on devel list about how to specify<br>
&gt;&gt; &gt;&gt;&gt; this as part of Standard-CI [1]. But have received little topical<br>
&gt;&gt; &gt;&gt;&gt; response so far.<br>
&gt;&gt; &gt;&gt;&gt; [1]: <a href="http://lists.ovirt.org/pipermail/devel/2017-January/029161.html" rel="noreferrer" target="_blank">http://lists.ovirt.org/<wbr>pipermail/devel/2017-January/<wbr>029161.html</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; You&#39;ve got enough responses already to propose a different schema than<br>
&gt;&gt; &gt;&gt; fixed branch names. Just give us a config file. Seriously, stop<br>
&gt;&gt; &gt;&gt; reinventing the wheel and take a look at how others are doing it<br>
&gt;&gt; &gt;&gt; (distgit, travis, tito, ...).<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Martin<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt;<br>
&gt;&gt; &gt;&gt;&gt; --<br>
&gt;&gt; &gt;&gt;&gt; Barak Korren<br>
&gt;&gt; &gt;&gt;&gt; <a href="mailto:bkorren@redhat.com">bkorren@redhat.com</a><br>
&gt;&gt; &gt;&gt;&gt; RHCE, RHCi, RHV-DevOps Team<br>
&gt;&gt; &gt;&gt;&gt; <a href="https://ifireball.wordpress.com/" rel="noreferrer" target="_blank">https://ifireball.wordpress.<wbr>com/</a><br>
&gt;&gt; &gt;&gt;&gt; ______________________________<wbr>_________________<br>
&gt;&gt; &gt;&gt;&gt; Devel mailing list<br>
&gt;&gt; &gt;&gt;&gt; <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
&gt;&gt; &gt;&gt;&gt; <a href="http://lists.ovirt.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.ovirt.org/<wbr>mailman/listinfo/devel</a><br>
&gt;&gt; &gt; ______________________________<wbr>_________________<br>
&gt;&gt; &gt; Devel mailing list<br>
&gt;&gt; &gt; <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
&gt;&gt; &gt; <a href="http://lists.ovirt.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.ovirt.org/<wbr>mailman/listinfo/devel</a><br>
&gt;&gt; ______________________________<wbr>_________________<br>
&gt;&gt; Devel mailing list<br>
&gt;&gt; <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
&gt;&gt; <a href="http://lists.ovirt.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.ovirt.org/<wbr>mailman/listinfo/devel</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Sandro Bonazzola<br>
&gt; Better technology. Faster innovation. Powered by community collaboration.<br>
&gt; See how it works at <a href="http://redhat.com" rel="noreferrer" target="_blank">redhat.com</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Sandro Bonazzola<br>Better technology. Faster innovation. Powered by community collaboration.<br>See how it works at <a href="http://redhat.com" target="_blank">redhat.com</a></div></div></div></div></div></div></div></div>
</div></div>