Announce: nightly repos available

82 views
Skip to first unread message

Eric Sorenson

unread,
Aug 26, 2014, 1:23:32 PM8/26/14
to puppe...@googlegroups.com
After the Puppet 3.5.0 release problems, we had a retrospective and tried to figure out some process improvements which would have surfaced the problems earlier. Despite a lengthy 4-week release candidate cycle, that release still had a fatal flaw that nobody had caught until it went into final release. As we talked it over, our thoughts turned to continuous delivery. Puppet (along with most of the other open-source projects) already produces packaged artifacts as moves through our Jenkins pipeline, so it seemed like a natural step to make those packages publicly available.

In lieu of release candidates, we are moving toward a more automated system which will have the latest green builds (passed spec and Beaker acceptance tests) cut off the 'master' branch for most of our projects. What this means is that as we near feature complete on a release, like the coming Puppet 3.7.0 release, users like yourself can begin trying out the packages to ensure that the new features haven’t broken anything you depend on, and that the new features work the way you expect/want them to.

The repos are live now and you can try them out by following these directions:
https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos

Hopefully this will help get faster turnaround AND better coverage. Please let us know if you find it useful!


Eric Sorenson - eric.s...@puppetlabs.com - freenode #puppet: eric0
puppet platform // coffee // techno // bicycles

Dominic Cleal

unread,
Aug 28, 2014, 3:13:09 AM8/28/14
to puppe...@googlegroups.com
On 26/08/14 18:23, Eric Sorenson wrote:
> After the Puppet 3.5.0 release problems, we had a retrospective and tried to figure out some process improvements which would have surfaced the problems earlier. Despite a lengthy 4-week release candidate cycle, that release still had a fatal flaw that nobody had caught until it went into final release. As we talked it over, our thoughts turned to continuous delivery. Puppet (along with most of the other open-source projects) already produces packaged artifacts as moves through our Jenkins pipeline, so it seemed like a natural step to make those packages publicly available.
>
> In lieu of release candidates, we are moving toward a more automated system which will have the latest green builds (passed spec and Beaker acceptance tests) cut off the 'master' branch for most of our projects.

Would it be possible to build packages for other branches (like
puppet-4, or facter-2 when it was in development) in the future? I'm
especially interested in tracking incompatible Puppet 4 changes.

(http://copr-fe.cloud.fedoraproject.org/coprs/domcleal/puppet4-nightly/
are my builds of puppet-4.)

> What this means is that as we near feature complete on a release, like the coming Puppet 3.7.0 release, users like yourself can begin trying out the packages to ensure that the new features haven't broken anything you depend on, and that the new features work the way you expect/want them to.
>
> The repos are live now and you can try them out by following these directions:
> https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos
>
> Hopefully this will help get faster turnaround AND better coverage. Please let us know if you find it useful!

This is great, many thanks.

I had been building RPMs on copr (dead easy with Puppet's packaging
helpers) and running Foreman's installer & smoke tests with them, which
helped us spot incompatible changes and regressions quickly. I'd
encourage everybody to do something similar if they have a similar test
suite, it's been very valuable.

--
Dominic Cleal
Red Hat Engineering

Henrik Lindberg

unread,
Aug 28, 2014, 12:17:50 PM8/28/14
to puppe...@googlegroups.com
On 2014-28-08 9:13, Dominic Cleal wrote:
> On 26/08/14 18:23, Eric Sorenson wrote:
>> After the Puppet 3.5.0 release problems, we had a retrospective and tried to figure out some process improvements which would have surfaced the problems earlier. Despite a lengthy 4-week release candidate cycle, that release still had a fatal flaw that nobody had caught until it went into final release. As we talked it over, our thoughts turned to continuous delivery. Puppet (along with most of the other open-source projects) already produces packaged artifacts as moves through our Jenkins pipeline, so it seemed like a natural step to make those packages publicly available.
>>
>> In lieu of release candidates, we are moving toward a more automated system which will have the latest green builds (passed spec and Beaker acceptance tests) cut off the 'master' branch for most of our projects.
>
> Would it be possible to build packages for other branches (like
> puppet-4, or facter-2 when it was in development) in the future? I'm
> especially interested in tracking incompatible Puppet 4 changes.
>

We really hope that the puppet4 and facter2 branches were a special
circumstance. It is not our intention to have long running feature
branches. As soon as 3.7.0 is released, the puppet4 branch will be
merged to master, and the puppet4 branch will be retired.

Since 3.7.0 is about to be released very soon there will not be any
puppet4 builds in nightly (until it is on master).

> (http://copr-fe.cloud.fedoraproject.org/coprs/domcleal/puppet4-nightly/
> are my builds of puppet-4.)
>
>> What this means is that as we near feature complete on a release, like the coming Puppet 3.7.0 release, users like yourself can begin trying out the packages to ensure that the new features haven't broken anything you depend on, and that the new features work the way you expect/want them to.
>>
>> The repos are live now and you can try them out by following these directions:
>> https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos
>>
>> Hopefully this will help get faster turnaround AND better coverage. Please let us know if you find it useful!
>
> This is great, many thanks.
>
> I had been building RPMs on copr (dead easy with Puppet's packaging
> helpers) and running Foreman's installer & smoke tests with them, which
> helped us spot incompatible changes and regressions quickly. I'd
> encourage everybody to do something similar if they have a similar test
> suite, it's been very valuable.
>
+1

- henrik

--

Visit my Blog "Puppet on the Edge"
http://puppet-on-the-edge.blogspot.se/

Dominic Cleal

unread,
Aug 28, 2014, 12:20:10 PM8/28/14
to puppe...@googlegroups.com
On 28/08/14 17:17, Henrik Lindberg wrote:
> On 2014-28-08 9:13, Dominic Cleal wrote:
>> On 26/08/14 18:23, Eric Sorenson wrote:
>>> After the Puppet 3.5.0 release problems, we had a retrospective and tried to figure out some process improvements which would have surfaced the problems earlier. Despite a lengthy 4-week release candidate cycle, that release still had a fatal flaw that nobody had caught until it went into final release. As we talked it over, our thoughts turned to continuous delivery. Puppet (along with most of the other open-source projects) already produces packaged artifacts as moves through our Jenkins pipeline, so it seemed like a natural step to make those packages publicly available.
>>>
>>> In lieu of release candidates, we are moving toward a more automated system which will have the latest green builds (passed spec and Beaker acceptance tests) cut off the 'master' branch for most of our projects.
>>
>> Would it be possible to build packages for other branches (like
>> puppet-4, or facter-2 when it was in development) in the future? I'm
>> especially interested in tracking incompatible Puppet 4 changes.
>>
>
> We really hope that the puppet4 and facter2 branches were a special
> circumstance. It is not our intention to have long running feature
> branches. As soon as 3.7.0 is released, the puppet4 branch will be
> merged to master, and the puppet4 branch will be retired.
>
> Since 3.7.0 is about to be released very soon there will not be any
> puppet4 builds in nightly (until it is on master).

Okay, that makes sense. Thanks Henrik.

Kylo Ginsberg

unread,
Aug 28, 2014, 2:41:50 PM8/28/14
to puppe...@googlegroups.com
On Tue, Aug 26, 2014 at 10:23 AM, Eric Sorenson <eric.s...@puppetlabs.com> wrote:
After the Puppet 3.5.0 release problems, we had a retrospective and tried to figure out some process improvements which would have surfaced the problems earlier. Despite a lengthy 4-week release candidate cycle, that release still had a fatal flaw that nobody had caught until it went into final release. As we talked it over, our thoughts turned to continuous delivery. Puppet (along with most of the other open-source projects) already produces packaged artifacts as moves through our Jenkins pipeline, so it seemed like a natural step to make those packages publicly available.

In lieu of release candidates, we are moving toward a more automated system which will have the latest green builds (passed spec and Beaker acceptance tests) cut off the 'master' branch for most of our projects. What this means is that as we near feature complete on a release, like the coming Puppet 3.7.0 release, users like yourself can begin trying out the packages to ensure that the new features haven't broken anything you depend on, and that the new features work the way you expect/want them to.

The repos are live now and you can try them out by following these directions:
https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos

As a heads up, we're shooting for releasing Puppet 3.7.0 on Tuesday. It'll have loads of goodies:


As discussed above, we're *not* doing RCs for this release, but we still love to get feedback prior to release. So if you're accustomed to trying out RCs, or just curious about an early glimpse at 3.7.0, please try out puppet-latest on the nightly repos, using the instructions above.

Thanks!
Kylo

--
Kylo Ginsberg

Join us at PuppetConf 2014September 20-24 in San Francisco
Register by September 8th to take advantage of the Final Countdown save $149!

Dominic Cleal

unread,
Aug 29, 2014, 4:55:52 AM8/29/14
to puppe...@googlegroups.com
On 26/08/14 18:23, Eric Sorenson wrote:
> The repos are live now and you can try them out by following these directions:
> https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos

It appears that Ubuntu 14.04 (trusty) packages are missing from the
Facter nightlies, though Puppet's present. Could they be built too?

Otherwise I'm happy to say that the Foreman test suite is green on EL6,
F19, Debian 7 (Wheezy) and Ubuntu 12.04, with Puppet and Facter
nightlies. It'll run twice a week from now on, testing a bunch of
modules, master/agent setups and Foreman integration.

Dominic Cleal

unread,
Aug 29, 2014, 12:17:47 PM8/29/14
to puppe...@googlegroups.com
On 29/08/14 09:55, Dominic Cleal wrote:
> On 26/08/14 18:23, Eric Sorenson wrote:
>> The repos are live now and you can try them out by following these directions:
>> https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos
>
> It appears that Ubuntu 14.04 (trusty) packages are missing from the
> Facter nightlies, though Puppet's present. Could they be built too?

Another useful addition would be the Puppet gem, as Facter's is already
there. I've got another battery of tests that could be run against it.

Cheers,

Wil Cooley

unread,
Aug 29, 2014, 2:30:06 PM8/29/14
to puppet-dev group
On Fri, Aug 29, 2014 at 9:17 AM, Dominic Cleal <dcle...@redhat.com> wrote:

Another useful addition would be the Puppet gem, as Facter's is already
there.  I've got another battery of tests that could be run against it.

I was just going to request that too; it would make testing within an RVM gemset on a non-disposable machine possible.

Wil 

Matthaus Owens

unread,
Sep 2, 2014, 1:37:54 PM9/2/14
to puppe...@googlegroups.com
I have just enabled the gem for puppet's test run, so that should
begin shipping with new green runs. I also enabled trusty for facter
nightlies. Thanks for the feedback and thanks for using them!
> --
> You received this message because you are subscribed to the Google Groups
> "Puppet Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to puppet-dev+...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/puppet-dev/CAMmm3r6wu1GM1wDcA8AzjQvoROQ4d8UGFk%3DzWbBtSM9iP1Ge%3DA%40mail.gmail.com.
>
> For more options, visit https://groups.google.com/d/optout.



--
Matthaus Owens
Puppet Labs

Felix Frank

unread,
Sep 2, 2014, 6:36:54 PM9/2/14
to puppe...@googlegroups.com
On 08/28/2014 06:17 PM, Henrik Lindberg wrote:
> We really hope that the puppet4 and facter2 branches were a special
> circumstance. It is not our intention to have long running feature
> branches. As soon as 3.7.0 is released, the puppet4 branch will be
> merged to master, and the puppet4 branch will be retired.

Yes, facter-2 ended up somewhat messy, but puppet-4 was really useful to
stay on top of things with the pull requests. Postponing non-Puppet-3.x
merges until after 3.7 landed would have been rather impractical.

Cheers,
Felix

Kylo Ginsberg

unread,
Sep 2, 2014, 8:00:48 PM9/2/14
to puppe...@googlegroups.com
That is great! Is this on http://ci.theforeman.org/? If so, which jobs? I'm curious to see details of what is tested.

Thanks!
Kylo


--
Dominic Cleal
Red Hat Engineering

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Kylo Ginsberg

Dominic Cleal

unread,
Sep 3, 2014, 4:59:12 AM9/3/14
to puppe...@googlegroups.com
On 03/09/14 01:00, Kylo Ginsberg wrote:
> On Fri, Aug 29, 2014 at 1:55 AM, Dominic Cleal <dcle...@redhat.com
> <mailto:dcle...@redhat.com>> wrote:
>
> On 26/08/14 18:23, Eric Sorenson wrote:
> > The repos are live now and you can try them out by following these
> directions:
> >
> https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html#using-the-nightly-repos
>
> It appears that Ubuntu 14.04 (trusty) packages are missing from the
> Facter nightlies, though Puppet's present. Could they be built too?
>
> Otherwise I'm happy to say that the Foreman test suite is green on EL6,
> F19, Debian 7 (Wheezy) and Ubuntu 12.04, with Puppet and Facter
> nightlies. It'll run twice a week from now on, testing a bunch of
> modules, master/agent setups and Foreman integration.
>
>
> That is great! Is this on http://ci.theforeman.org/? If so, which jobs?
> I'm curious to see details of what is tested.

That's right. The exact job is:
http://ci.theforeman.org/job/systest_foreman_puppet_nightly/

(current F19 failure is in our nightlies, trusty is due to the missing
Facter nightly repo)

It runs a BATS-based test suite using Vagrant on Rackspace Cloud:
https://github.com/theforeman/foreman-bats

This simply configures repos, then runs foreman-installer, which is a
Kafo-based tool around Puppet modules for setting up Apache, PostgreSQL,
Passenger-based Puppet master and Foreman instance.

https://github.com/theforeman/foreman-installer
https://github.com/theforeman/kafo

It then downloads some modules from the Forge, imports them into Foreman
and checks they apply via the agent.

Matthaus Owens

unread,
Sep 3, 2014, 8:50:47 PM9/3/14
to puppe...@googlegroups.com
Dominic,
Facter master just passed acceptance with trusty, so it is now
available in the nightly repos.
> --
> You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/5406D85A.3020504%40redhat.com.
> For more options, visit https://groups.google.com/d/optout.



--
Matthaus Owens
Puppet Labs

Dominic Cleal

unread,
Sep 4, 2014, 4:16:48 AM9/4/14
to puppe...@googlegroups.com
On 04/09/14 01:50, Matthaus Owens wrote:
> Dominic,
> Facter master just passed acceptance with trusty, so it is now
> available in the nightly repos.

Great, thanks. Looks like it got further, but failed on an obscure
issue between the Foreman API and one of our types/providers.
Reply all
Reply to author
Forward
0 new messages