<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Jun 22, 2016 at 2:17 PM, 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:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">&gt; That&#39;s not automation, its just you (human) building the official build in<br>
&gt; COPR<br>
&gt; rather in jenkins no?<br>
<br>
</span>It is automated enough for me, I just upload (the equivalent of<br>
tagging) the srpm and it builds it for all platforms. It is then<br>
automatically released in the project repository.<br></blockquote><div><br></div><div>Again, you&#39;re thinking on a small group of maintainers that might think as you,</div><div>less on oVirt as a sum of 60+ different projects. </div><div><br></div><div>While what you are suggesting might be an improvement of existing system,</div><div>I am thinking on a full automated solution for all projects that will be handled</div><div>in a similar way to nightlies and verification done on CI.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
COPR is not just a build system, it also exposes repositories for<br>
projects and you can easily use it from dnf.<br>
<br>
It is also much easier to use than what we have, because I can have a<br>
separate configuration for different releases and distributions. This<br>
is much harder when the release is directly tied to the upstream<br>
source repository. And I am using upstream in the project source sense<br>
here, oVirt is downstream in that sense (as is Fedora or RHEL).<br>
<span class="HOEnZb"><font color="#888888"><br>
Martin<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
On Wed, Jun 22, 2016 at 12:59 PM, Eyal Edri &lt;<a href="mailto:eedri@redhat.com">eedri@redhat.com</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt; On Wed, Jun 22, 2016 at 12:49 PM, Martin Sivak &lt;<a href="mailto:msivak@redhat.com">msivak@redhat.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; &gt; What I think we should do is to add support that once an official tag is<br>
&gt;&gt; &gt; done an official build will be triggered and done.<br>
&gt;&gt; &gt; The question is can the official build flow be automated? IIRC it<br>
&gt;&gt; &gt; involves<br>
&gt;&gt; &gt; using tarball + signing or some other manual work which isn&#39;t<br>
&gt;&gt; &gt; similar to the way nigthly rpms are built.<br>
&gt;&gt;<br>
&gt;&gt; Please let it live separately from the main project development<br>
&gt;&gt; repository and its tags.. The spec file is also something that might<br>
&gt;&gt; be oVirt specific (because Fedora, RHEL and CentOS have a different<br>
&gt;&gt; dependencies and packaging requirements..) and should be separated<br>
&gt;&gt; from the actual upstream tarball source release.<br>
&gt;&gt;<br>
&gt;&gt; But a flow similar to distgit would be nice, let me release a<br>
&gt;&gt; component any time I want (with the necessary branch based way to<br>
&gt;&gt; ensure compatibility) and take the latest from the right branch for a<br>
&gt;&gt; compose.<br>
&gt;<br>
&gt;<br>
&gt; That&#39;s not automation, its just you (human) building the official build in<br>
&gt; COPR<br>
&gt; rather in jenkins no?<br>
&gt;<br>
&gt; Which again leaves us with the problem of maintainer not aware he needs to<br>
&gt; builds/not synced/away....<br>
&gt;<br>
&gt; If we can reach a common ground for all projects on how to use a single (or<br>
&gt; at least a small group)<br>
&gt; of automation scripts that will do a formal build, then similar to what we<br>
&gt; do with nightlies we can collected<br>
&gt; them into a &#39;pre&#39; repo which is candidate for release.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;&gt;<br>
&gt;&gt; The reason I asked about COPR is that I already use it like that, I<br>
&gt;&gt; have a special COPR project where I release optimizer bits for 3.5 [2]<br>
&gt;&gt; and 3.6 [1] in the distgit fashion. And I have a separate project for<br>
&gt;&gt; master tests and will have a separate project for 4.0 rpms.<br>
&gt;&gt;<br>
&gt;&gt; [1]<br>
&gt;&gt; <a href="https://copr.fedorainfracloud.org/coprs/msivak/ovirt-optimizer-for-ovirt-3.6/" rel="noreferrer" target="_blank">https://copr.fedorainfracloud.org/coprs/msivak/ovirt-optimizer-for-ovirt-3.6/</a><br>
&gt;&gt; [2]<br>
&gt;&gt; <a href="https://copr.fedorainfracloud.org/coprs/msivak/ovirt-optimizer-for-ovirt-3.5/" rel="noreferrer" target="_blank">https://copr.fedorainfracloud.org/coprs/msivak/ovirt-optimizer-for-ovirt-3.5/</a><br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; Martin<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Wed, Jun 22, 2016 at 11:38 AM, Eyal Edri &lt;<a href="mailto:eedri@redhat.com">eedri@redhat.com</a>&gt; wrote:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Wed, Jun 22, 2016 at 11:21 AM, Martin Sivak &lt;<a href="mailto:msivak@redhat.com">msivak@redhat.com</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; &gt; - you as packager / maintainer should add your build to the release<br>
&gt;&gt; &gt;&gt; &gt; configuration file[1] or send an email with the link to your builds<br>
&gt;&gt; &gt;&gt; &gt; to<br>
&gt;&gt; &gt;&gt; &gt; the<br>
&gt;&gt; &gt;&gt; &gt; person handling the release<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Is there a way to automate this? Like giving you the URL of the<br>
&gt;&gt; &gt;&gt; release repository in COPR and using whatever latest package you find<br>
&gt;&gt; &gt;&gt; there?<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; What I think we should do is to add support that once an official tag is<br>
&gt;&gt; &gt; done an official build will be triggered and done.<br>
&gt;&gt; &gt; The question is can the official build flow be automated? IIRC it<br>
&gt;&gt; &gt; involves<br>
&gt;&gt; &gt; using tarball + signing or some other manual work which isn&#39;t<br>
&gt;&gt; &gt; similar to the way nigthly rpms are built.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Martin<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Wed, Jun 22, 2016 at 9:44 AM, Sandro Bonazzola &lt;<a href="mailto:sbonazzo@redhat.com">sbonazzo@redhat.com</a>&gt;<br>
&gt;&gt; &gt;&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt; Hi,<br>
&gt;&gt; &gt;&gt; &gt; since it seems not clear how to get your package included in a oVirt<br>
&gt;&gt; &gt;&gt; &gt; release, here&#39;s the procedure:<br>
&gt;&gt; &gt;&gt; &gt; - a new build planned is communicated to <a href="mailto:devel@ovirt.org">devel@ovirt.org</a> from release<br>
&gt;&gt; &gt;&gt; &gt; engineering team<br>
&gt;&gt; &gt;&gt; &gt; - you as package maintainer should prepare your package to be<br>
&gt;&gt; &gt;&gt; &gt; released<br>
&gt;&gt; &gt;&gt; &gt; with<br>
&gt;&gt; &gt;&gt; &gt; desired version (<a href="http://configure.ac" rel="noreferrer" target="_blank">configure.ac</a>, spec, whatever)<br>
&gt;&gt; &gt;&gt; &gt; - you as packager should build your package in jenkins / koji / copr<br>
&gt;&gt; &gt;&gt; &gt; /<br>
&gt;&gt; &gt;&gt; &gt; whatever you use to build<br>
&gt;&gt; &gt;&gt; &gt; - you as packager / maintainer should add your build to the release<br>
&gt;&gt; &gt;&gt; &gt; configuration file[1] or send an email with the link to your builds<br>
&gt;&gt; &gt;&gt; &gt; to<br>
&gt;&gt; &gt;&gt; &gt; the<br>
&gt;&gt; &gt;&gt; &gt; person handling the release<br>
&gt;&gt; &gt;&gt; &gt; - if you correctly add your package to conf files, you&#39;ll have your<br>
&gt;&gt; &gt;&gt; &gt; package<br>
&gt;&gt; &gt;&gt; &gt; released and release notes updated.<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; [1] like in<br>
&gt;&gt; &gt;&gt; &gt; <a href="https://gerrit.ovirt.org/#/q/project:releng-tools+topic:releases" rel="noreferrer" target="_blank">https://gerrit.ovirt.org/#/q/project:releng-tools+topic:releases</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Thanks<br>
&gt;&gt; &gt;&gt; &gt; --<br>
&gt;&gt; &gt;&gt; &gt; Sandro Bonazzola<br>
&gt;&gt; &gt;&gt; &gt; Better technology. Faster innovation. Powered by community<br>
&gt;&gt; &gt;&gt; &gt; collaboration.<br>
&gt;&gt; &gt;&gt; &gt; See how it works at <a href="http://redhat.com" rel="noreferrer" target="_blank">redhat.com</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; _______________________________________________<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/mailman/listinfo/devel</a><br>
&gt;&gt; &gt;&gt; _______________________________________________<br>
&gt;&gt; &gt;&gt; Devel mailing list<br>
&gt;&gt; &gt;&gt; <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
&gt;&gt; &gt;&gt; <a href="http://lists.ovirt.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.ovirt.org/mailman/listinfo/devel</a><br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; --<br>
&gt;&gt; &gt; Eyal Edri<br>
&gt;&gt; &gt; Associate Manager<br>
&gt;&gt; &gt; RHEV DevOps<br>
&gt;&gt; &gt; EMEA ENG Virtualization R&amp;D<br>
&gt;&gt; &gt; Red Hat Israel<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; phone: <a href="tel:%2B972-9-7692018" value="+97297692018">+972-9-7692018</a><br>
&gt;&gt; &gt; irc: eedri (on #tlv #rhev-dev #rhev-integ)<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Eyal Edri<br>
&gt; Associate Manager<br>
&gt; RHEV DevOps<br>
&gt; EMEA ENG Virtualization R&amp;D<br>
&gt; Red Hat Israel<br>
&gt;<br>
&gt; phone: <a href="tel:%2B972-9-7692018" value="+97297692018">+972-9-7692018</a><br>
&gt; irc: eedri (on #tlv #rhev-dev #rhev-integ)<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Eyal Edri<br>Associate Manager</div><div>RHEV DevOps<br>EMEA ENG Virtualization R&amp;D<br>Red Hat Israel<br><br>phone: +972-9-7692018<br>irc: eedri (on #tlv #rhev-dev #rhev-integ)</div></div></div></div></div>
</div></div>