Nightly Opscode Chef RPMs and some questions


#1

Hey all,

Today I’ll be releasing nightly RPMs from Chef master in an attempt to
do some kind of CI/testing of the RBEL RPM packages. This will help me
to anticipate changes/breakage and release packages in a couple of
days (maybe even the same day) after the official Opscode Chef
release.

I’ve got the build/CI system in place and now I’m writing some tests
to validate the build.

I have a question related to the build:

RPMs are time-stamped when they’re built (i.e.
rubygem-chef-0.10.2-3.20110725_1130.el6.noarch.rpm) but I haven’t
found a good way of time stamping chef gems other than modifying
lib/*/version.rb in every chef module on the fly.

Is there a better way of doing this kind of stuff?

I’m thinking of appending git short commit string to the VERSION
string or something like that, so I can validate the build is up2date
and the version string appears in Chef webui.

Feedback is greatly appreciated.

Thanks!


#2

Hiya,

I’ve published the scripts I’m currently using to validate the build
in case anyone is interested:

Rgds.

On Mon, Jul 25, 2011 at 12:23 PM, Sergio Rubio rubiojr@frameos.org wrote:

Hey all,

Today I’ll be releasing nightly RPMs from Chef master in an attempt to
do some kind of CI/testing of the RBEL RPM packages. This will help me
to anticipate changes/breakage and release packages in a couple of
days (maybe even the same day) after the official Opscode Chef
release.

I’ve got the build/CI system in place and now I’m writing some tests
to validate the build.

I have a question related to the build:

RPMs are time-stamped when they’re built (i.e.
rubygem-chef-0.10.2-3.20110725_1130.el6.noarch.rpm) but I haven’t
found a good way of time stamping chef gems other than modifying
lib/*/version.rb in every chef module on the fly.

Is there a better way of doing this kind of stuff?

I’m thinking of appending git short commit string to the VERSION
string or something like that, so I can validate the build is up2date
and the version string appears in Chef webui.

Feedback is greatly appreciated.

Thanks!


#3

Rubio,

Nice work.

What I would really like to see is a ‘testing’ cookbook in place of ‘yum’,
which would test every resource and provider.

Could anyone explain to us the tests which go along with an official package
build? Is it simply rake test?

Thanks,

James

On Tue, Jul 26, 2011 at 2:05 AM, Sergio Rubio rubiojr@frameos.org wrote:

Hiya,

I’ve published the scripts I’m currently using to validate the build
in case anyone is interested:

https://github.com/rubiojr/chef-rpms-builder/tree/master/test

Rgds.

On Mon, Jul 25, 2011 at 12:23 PM, Sergio Rubio rubiojr@frameos.org
wrote:

Hey all,

Today I’ll be releasing nightly RPMs from Chef master in an attempt to
do some kind of CI/testing of the RBEL RPM packages. This will help me
to anticipate changes/breakage and release packages in a couple of
days (maybe even the same day) after the official Opscode Chef
release.

I’ve got the build/CI system in place and now I’m writing some tests
to validate the build.

I have a question related to the build:

RPMs are time-stamped when they’re built (i.e.
rubygem-chef-0.10.2-3.20110725_1130.el6.noarch.rpm) but I haven’t
found a good way of time stamping chef gems other than modifying
lib/*/version.rb in every chef module on the fly.

Is there a better way of doing this kind of stuff?

I’m thinking of appending git short commit string to the VERSION
string or something like that, so I can validate the build is up2date
and the version string appears in Chef webui.

Feedback is greatly appreciated.

Thanks!


#4

On Tuesday, July 26, 2011, James js@aegisco.com wrote:

Rubio,
Nice work.
What I would really like to see is a ‘testing’ cookbook in place of ‘yum’,
which would test every resource and provider.

Yeah, I guess we should stress the packages further. I’m currently
investigating which test from the official tree we could reuse for this
purpose. Any pointers to relevant docs?

Cheers.

Could anyone explain to us the tests which go along with an official
package build? Is it simply rake test?
Thanks,
James

On Tue, Jul 26, 2011 at 2:05 AM, Sergio Rubio rubiojr@frameos.org wrote:

Hiya,

I’ve published the scripts I’m currently using to validate the build
in case anyone is interested:

https://github.com/rubiojr/chef-rpms-builder/tree/master/test <
https://github.com/rubiojr/chef-rpms-builder/tree/master/test>

Rgds.

On Mon, Jul 25, 2011 at 12:23 PM, Sergio Rubio rubiojr@frameos.org
wrote:

Hey all,

Today I’ll be releasing nightly RPMs from Chef master in an attempt to
do some kind of CI/testing of the RBEL RPM packages. This will help me
to anticipate changes/breakage and release packages in a couple of
days (maybe even the same day) after the official Opscode Chef
release.

I’ve got the build/CI system in place and now I’m writing some tests
to validate the build.

I have a question related to the build:

RPMs are time-stamped when they’re built (i.e.
rubygem-chef-0.10.2-3.20110725_1130.el6.noarch.rpm) but I haven’t
found a good way of time stamping chef gems other than modifying
lib/*/version.rb in every chef module on the fly.

Is there a better way of doing this kind of stuff?

I’m thinking of appending git short commit string to the VERSION
string or something like that, so I can validate the build is up2date
and the version string appears in Chef webui.

Feedback is greatly appreciated.

Thanks!