<html><body><div><div>Why not continuously build the ostree based on package changes to Docker, Kub, etcd, flannel, etc. &nbsp;This way the triggering happens when packages are updated. &nbsp; It would be great if Centos had something like fedmsg or our &nbsp;downstream CI message bus.&nbsp;</div><div><br></div><div>Thoughts?&nbsp;</div><div><br></div><div id="composer_signature"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">-== @ri ==-</div><br><br>-------- Original message --------<br>From: Colin Walters &lt;walters@verbum.org&gt; <br>Date: 07/15/2015  5:40 PM  (GMT-05:00) <br>To: centos-devel@centos.org <br>Subject: Re: [CentOS-devel] numbering and building the CentOS Atomic story <br><br></div><br><div>Thanks for posting this!
<br>
<br>On Wed, Jul 15, 2015, at 06:18 AM, Karanbir Singh wrote:
<br>&gt;
<br>&gt; For (a) above, I propose we run an ostree repo, managed by a
<br>&gt; centos-release-projectatomic rpm file; the ostree repo for this should
<br>&gt; be delivered from buildlogs.centos.org, and updated in sync with the
<br>&gt; rest of the content in the CentOS Linux repos, as well as the atomic sig
<br>&gt; run repos in the community build service. In order to keep things
<br>&gt; simple, it might be good enough to run this ostree update on a nightly
<br>&gt; basis.
<br>
<br>With current rpm-ostree it is very inexpensive to just run it constantly (e.g
<br>every 5 minutes), or better, edge triggered from push notification from
<br>one of the rpm-md input repos being regenerated, and it will quickly do
<br>nothing if there's nothing to do.
<br>
<br>See:
<br><a href="https://lists.projectatomic.io/projectatomic-archives/atomic-devel/2015-June/msg00041.html">https://lists.projectatomic.io/projectatomic-archives/atomic-devel/2015-June/msg00041.html</a>
<br>
<br>&gt; I propose this nightly build be run from an automated harness at
<br>&gt; ci.centos.org, which would pull down the last ostree repo, do its
<br>&gt; updates, commit the changeset, and have a way to push back into the
<br>&gt; buildlogs.centos.org host the new repo. 
<br>
<br>Transitioning it from CI to CD then. &nbsp;There's lots of interesting aspects to
<br>this...
<br>
<br>&gt; As an additional downstream
<br>&gt; trigger, we should then build nightly the images derived from this
<br>
<br>Not sure I understand the rationale of this nightly thing here either. &nbsp;Why
<br>not just trigger all images when the ostree commit changes? &nbsp;That can
<br>be implemented by a few lines of shell to compare the previous/new
<br>commit IDs, and/or rpm-ostree compose tree --touch-if-changed.
<br>
<br>&gt; ostree repo ( this would be the GenericCloud, Vagrant, ISO files etc for
<br>&gt; the atomic build that maps to the latest commit in that ostree repo).
<br>&gt; For numbering, I propose we use datestamp with a build id eg:
<br>&gt; 20150715_01, this maps well to user expectations and also sets suitable
<br>&gt; confidence in the build.
<br>
<br>That versioning seems fine to me.
<br>
<br>&gt; Key requirement to applying updates is that the atomic host needs a
<br>&gt; reboot to consume the latest ostree propagated changes. So while the
<br>&gt; updated tree would be available nightly, uses might chose to still apply
<br>&gt; it nightly, they can control to a fairly good granularity the point in
<br>&gt; time they wish to run.
<br>
<br>That sounds like a different branch name?
<br>
<br>&gt; The atomic sig can then decide which point in time build they wish to
<br>&gt; promote as their 4wk 'release' image. The ostree repo + images +
<br>&gt; documentation for that build can then be promoted to a release location.
<br>&gt; This would then be announced via projectatomic.io
<br>&gt; 
<br>&gt; I'm also proposing that this build be called the project atomic build.
<br>&gt; 
<br>&gt; for (b) above, I'm proposing we use the same process as for (a), except
<br>&gt; for the following major changes :
<br>&gt; - content in (a) is signed, 
<br>
<br>Is *not* signed? &nbsp;Or is? &nbsp;Note that OSTree actually supports multiple
<br>GPG signatures per commit, intended for &quot;binary promotion&quot; workflows.
<br>But:
<br>
<br>&gt; so while we can build things nightly, we
<br>&gt; cant promote that content as is. 
<br>
<br>Right, and the SIG build may have things that aren't in the rebuild,
<br>so it wouldn't make sense to binary-promote.
<br>
<br>&gt; - the update cycle for the ostree repo should be undecided, so we can
<br>&gt; promote a new update if there are security issues that merit this work,
<br>&gt; and also when there is a new version of a core component that we might
<br>&gt; want to push out out of band ( i.e not wait on the next upstream build )
<br>
<br>I doubt anyone would object if we unconditionally always included the Z stream
<br>errata and released the tree commit immediately after the RPM rebuild.
<br>_______________________________________________
<br>CentOS-devel mailing list
<br>CentOS-devel@centos.org
<br><a href="http://lists.centos.org/mailman/listinfo/centos-devel">http://lists.centos.org/mailman/listinfo/centos-devel</a>
<br></div></body></html>