Chef 10.12.0 Release Candidate 1

We've pushed the first release candidate for Chef 10.12.0 up to
Rubygems.org. You can test it out by installing the chef gem with the
'gem install chef --pre' command.

This release fixes a regression preventing chef-client from running on
Windows Server 2003.

We built a much stronger link resource and fixed a regression with the
mdadm provider.

Of course, there are many fixes and features from the community, outlined below.

We expect to have a build available of Omnibus available today from
the new Ruby based system. Stay tuned for more information about that.

The release will change the Chef version scheme in the same way we
described for the Ohai project in the 6.14.0 release notes yesterday:

Release Notes

http://tickets.opscode.com/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+CHEF+AND+fixVersion+%3D+10801

CHEF-3155 Chef::Win32 constant collides with ::Win32 constant, causing
confusing NoMethodErrors
CHEF-3153 securable_spec uses load to reset configuration, breaking rake spec
CHEF-3143 gem_package under omnibus not properly detecting path or
setting gem_binary
CHEF-3142 Function 'Quer ySecurityAccessMask' not found in [advapi32]
(FFI::NotFoundError) when running "chef-client --version" on Windows
Server 2003 R2 SP2
CHEF-3135 Notifications from remote_file resource not working
CHEF-3129 "mode" on Windows errors out where before it silently failed
CHEF-3123 mdadm does not work on debian squeeze
CHEF-3114 convert knife ssh to chef/mixin/shell_out
CHEF-3112 link resource fails when link file already exists but is not
a link to the target
CHEF-3111 link resource silently fails to switch a link from symbolic to hard
CHEF-3110 link resource fails when changing owner of link to nonexistent file
CHEF-3108 remove mixlib-shellout version dependency
CHEF-3106 cache_options puts checksum files into etc, instead of var
CHEF-3103 Typo in long form option
CHEF-3102 Link resource fails when owner/group is set
CHEF-3099 Platform mapping debugging messages confusing / noisy
CHEF-2887 FFI bindings not backward compatible with Windows XP
CHEF-2389 link provider is not idempotent when used with relative link (to)

--
Bryan McLellan | opscode | technical program manager, open source
(c) 206.607.7108 | (t) @btmspox | (b) http://blog.loftninjas.org

Ohai Chefs!

As Bryan mentioned in the previous email, Chef 10.12.0 is also the "Omnibus" release which marks the point at which we begin shipping Omnibus builds of the Chef client that are generated by our new Ruby-based build system. I'm sending this email out as a notice that we've pushed out some new build artifacts of Chef 10.12.0.rc.1 and you'll now be able to pick them up via knife bootstrap[[[[ and Opscode's hosted installer (http://www.opscode.com/chef/install.sh).

= Install Instructions

Since this is a release candidate, 10.12.0.rc.1 is NOT the default version installed by either knife bootstrap or install.sh. You will have to configure each method accordingly:

== knife bootstrap

To configure knife bootstrap to bootstrap new nodes with an Omnibus-built Chef 0.10.12.rc.1, you'll have to set the #bootstrap_version configuration parameter. You can do this either via your knife.rb (with the #bootstrap_version method) or via the --bootstrap-version command line argument. The correct value to set is "10.12.0.rc.1".

In future releases (and release candidates), knife bootstrap will automatically bootstrap your Omnibus nodes with the currently-installed version of Chef [1].

== install.sh

To use install.sh to install the latest prerelease, simple call it with the -v flag: install.sh -v 10.12.0.rc.1

= Supported Platforms

Moving our clojure-based build infrastructure over to Ruby has taken time, and we're not 100% of the way there yet. Omnibus packages have been built and uploaded for the following platforms:

Ubuntu:

  • 10.04 (x86, x86_64)
  • 11.04 (x86, x86_64)
  • 12.04 (x86, x86_64)

CentOS / RedHat:

  • 5 (x86, x86_64)
  • 6 (x86, x86_64)

New builds for Mac OS X, Debian, Solaris, and Windows will follow shortly.

1: http://tickets.opscode.com/browse/CHEF-3166

Cheers!

--
Stephen Delano
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)

On Thursday, May 31, 2012 at 10:48 AM, Bryan McLellan wrote:

We've pushed the first release candidate for Chef 10.12.0 up to
Rubygems.org (http://Rubygems.org). You can test it out by installing the chef gem with the
'gem install chef --pre' command.

This release fixes a regression preventing chef-client from running on
Windows Server 2003.

We built a much stronger link resource and fixed a regression with the
mdadm provider.

Of course, there are many fixes and features from the community, outlined below.

We expect to have a build available of Omnibus available today from
the new Ruby based system. Stay tuned for more information about that.

The release will change the Chef version scheme in the same way we
described for the Ohai project in the 6.14.0 release notes yesterday:
Ohai 6.14.0 released - Chef Blog | Chef

Release Notes

http://tickets.opscode.com/secure/IssueNavigator.jspa?reset=true&jqlQuery=project+%3D+CHEF+AND+fixVersion+%3D+10801

CHEF-3155 Chef::Win32 constant collides with ::Win32 constant, causing
confusing NoMethodErrors
CHEF-3153 securable_spec uses load to reset configuration, breaking rake spec
CHEF-3143 gem_package under omnibus not properly detecting path or
setting gem_binary
CHEF-3142 Function 'Quer ySecurityAccessMask' not found in [advapi32]
(FFI::NotFoundError) when running "chef-client --version" on Windows
Server 2003 R2 SP2
CHEF-3135 Notifications from remote_file resource not working
CHEF-3129 "mode" on Windows errors out where before it silently failed
CHEF-3123 mdadm does not work on debian squeeze
CHEF-3114 convert knife ssh to chef/mixin/shell_out
CHEF-3112 link resource fails when link file already exists but is not
a link to the target
CHEF-3111 link resource silently fails to switch a link from symbolic to hard
CHEF-3110 link resource fails when changing owner of link to nonexistent file
CHEF-3108 remove mixlib-shellout version dependency
CHEF-3106 cache_options puts checksum files into etc, instead of var
CHEF-3103 Typo in long form option
CHEF-3102 Link resource fails when owner/group is set
CHEF-3099 Platform mapping debugging messages confusing / noisy
CHEF-2887 FFI bindings not backward compatible with Windows XP
CHEF-2389 link provider is not idempotent when used with relative link (to)

--
Bryan McLellan | opscode | technical program manager, open source
(c) 206.607.7108 | (t) @btmspox | (b) http://blog.loftninjas.org

On Fri, Jun 1, 2012 at 8:10 PM, Stephen Delano stephen@opscode.com wrote:

= Install Instructions

Since this is a release candidate, 10.12.0.rc.1 is NOT the default version installed by either knife bootstrap or install.sh. You will have to configure each method accordingly:

== knife bootstrap

To configure knife bootstrap to bootstrap new nodes with an Omnibus-built Chef 0.10.12.rc.1, you'll have to set the #bootstrap_version configuration parameter. You can do this either via your knife.rb (with the #bootstrap_version method) or via the --bootstrap-version command line argument. The correct value to set is "10.12.0.rc.1".

This worked for me on Ubuntu 12.04, but failed on Centos 6.2 -
install.sh hits a 404 downloading the package:

test-centos6.nat0.cryptocracy.com Downloading Chef 10.12.0.rc.1 for el...
test-centos6.nat0.cryptocracy.com --2012-06-03 20:47:37--
http://s3.amazonaws.com/opscode-full-stack/el-6.2-x86_64/chef-full-10.12.0.rc.1.x86_64.rpm
test-centos6.nat0.cryptocracy.com Resolving s3.amazonaws.com...
test-centos6.nat0.cryptocracy.com 205.251.242.100
test-centos6.nat0.cryptocracy.com Connecting to
s3.amazonaws.com|205.251.242.100|:80...
test-centos6.nat0.cryptocracy.com connected.
test-centos6.nat0.cryptocracy.com HTTP request sent, awaiting response...
test-centos6.nat0.cryptocracy.com 404 Not Found

I'm not sure whether this is caused by a mistake in install.sh, or a
change in package naming, but the following change allowed me to
proceed with the install:
<--snip-->
--- install.sh 2012-06-03 20:55:37.419994477 +0000
+++ install.sh.fixed 2012-06-03 20:54:19.233285081 +0000
@@ -27,7 +27,7 @@

Set the filename for an rpm, based on version and machine

rpm_filename() {
filetype="rpm"

  • filename="chef-full-${version}.${machine}.rpm"
  • filename="chef-full_${version}.${machine}.rpm"
    }

Set the filename for the sh archive

<--snip-->

Zac

Thanks Zac!

I've updated the RPM packages in S3 to match the naming scheme set by install.sh.

--
Stephen Delano
Sent with Sparrow (http://www.sparrowmailapp.com/?sig)

On Sunday, June 3, 2012 at 1:58 PM, Zac Stevens wrote:

On Fri, Jun 1, 2012 at 8:10 PM, Stephen Delano <stephen@opscode.com (mailto:stephen@opscode.com)> wrote:

= Install Instructions

Since this is a release candidate, 10.12.0.rc.1 is NOT the default version installed by either knife bootstrap or install.sh (http://install.sh). You will have to configure each method accordingly:

== knife bootstrap

To configure knife bootstrap to bootstrap new nodes with an Omnibus-built Chef 0.10.12.rc.1, you'll have to set the #bootstrap_version configuration parameter. You can do this either via your knife.rb (with the #bootstrap_version method) or via the --bootstrap-version command line argument. The correct value to set is "10.12.0.rc.1".

This worked for me on Ubuntu 12.04, but failed on Centos 6.2 -
install.sh (http://install.sh) hits a 404 downloading the package:

test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) Downloading Chef 10.12.0.rc.1 for el...
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) --2012-06-03 20:47:37--
http://s3.amazonaws.com/opscode-full-stack/el-6.2-x86_64/chef-full-10.12.0.rc.1.x86_64.rpm
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) Resolving s3.amazonaws.com (http://s3.amazonaws.com)...
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) 205.251.242.100
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) Connecting to
s3.amazonaws.com (http://s3.amazonaws.com)|205.251.242.100|:80...
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) connected.
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) HTTP request sent, awaiting response...
test-centos6.nat0.cryptocracy.com (http://test-centos6.nat0.cryptocracy.com) 404 Not Found

I'm not sure whether this is caused by a mistake in install.sh (http://install.sh), or a
change in package naming, but the following change allowed me to
proceed with the install:
<--snip-->
--- install.sh (http://install.sh) 2012-06-03 20:55:37.419994477 +0000
+++ install.sh.fixed 2012-06-03 20:54:19.233285081 +0000
@@ -27,7 +27,7 @@

Set the filename for an rpm, based on version and machine

rpm_filename() {
filetype="rpm"

  • filename="chef-full-${version}.${machine}.rpm"
  • filename="chef-full_${version}.${machine}.rpm"
    }

Set the filename for the sh archive

<--snip-->

Zac