Skip to content

Commit

Permalink
Bump revision to 12.5.0.current.0
Browse files Browse the repository at this point in the history
  • Loading branch information
jkeiser committed Jun 23, 2015
1 parent 35e07bb commit 82ecae4
Show file tree
Hide file tree
Showing 6 changed files with 6 additions and 166 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
@@ -1,3 +1,5 @@
## 12.5.0

## 12.4.0

* [**Phil Dibowitz**](https://github.com/jaymzh):
Expand Down
76 changes: 0 additions & 76 deletions DOC_CHANGES.md
Expand Up @@ -6,79 +6,3 @@ Example Doc Change:
Description of the required change.
-->

### Resources now *all* get automatic DSL

When you declare a resource (no matter where) you now get automatic DSL for it, based on your class name:

```ruby
module MyModule
class MyResource < Chef::Resource
# Names the resource "my_resource"
end
end
```

When this happens, the resource can be used in a recipe:

```ruby
my_resource 'blah' do
end
```

If you have an abstract class that should *not* have DSL, set `resource_name` to `nil`:

```ruby
module MyModule
# This will not have DSL
class MyBaseResource < Chef::Resource
resource_name nil
end
# This will have DSL `my_resource`
class MyResource < MyBaseResource
end
end
```

When you do this, `my_base_resource` will not work in a recipe (but `my_resource` will).

You can still use `provides` to provide other DSL names:

```ruby
module MyModule
class MyResource < Chef::Resource
provides :super_resource
end
end
```

Which enables this recipe:

```ruby
super_resource 'wowzers' do
end
```

(Note that when you use provides in this manner, resource_name will be `my_resource` and declared_type will be `super_resource`. This won't affect most people, but it is worth noting as a matter of explanation.)

Users are encouraged to declare resources in their own namespaces instead of putting them in the `Chef::Resource` namespace.

### Resources may now use `allowed_actions` and `default_action`

Instead of overriding `Chef::Resource.initialize` and setting `@allowed_actions` and `@action` in the constructor, you may now use the `allowed_actions` and `default_action` DSL to declare them:

```ruby
class MyResource < Chef::Resource
allowed_actions :create, :delete
default_action :create
end
```

### LWRPs are no longer automatically placed in the `Chef::Resource` namespace

Starting with Chef 12.4.0, accessing an LWRP class by name from the `Chef::Resource` namespace will trigger a deprecation warning message. This means that if your cookbook includes the LWRP `mycookbook/resources/myresource.rb`, you will no longer be able to extend or reference `Chef::Resource::MycookbookMyresource` in Ruby code. LWRP recipe DSL does not change: the LWRP will still be available to recipes as `mycookbook_myresource`.

You can still get the LWRP class by calling `Chef::ResourceResolver.resolve(:mycookbook_myresource)`.

The primary aim here is clearing out the `Chef::Resource` namespace.

References to these classes is deprecated (and will emit a warning) in Chef 12, and will be removed in Chef 13.
88 changes: 1 addition & 87 deletions RELEASE_NOTES.md
@@ -1,87 +1 @@
# Chef Client Release Notes 12.4.0:

## Knife Key Management Commands for Users and Clients

`knife user` and `knife client` now have a suite of subcommands that live under
the `key` subcommand. These subcommands allow you to list, show, create, delete
and edit keys for a given user or client. They can be used to implement
key rotation with multiple expiring keys for a single actor or just
for basic key management. See `knife user key` and `knife client key`
for a full list of subcommands and their usage.

## System Loggers

You can now have all Chef logs sent to a logging system of your choice.

### Syslog Logger

Syslog can be used by adding the following line to your chef config
file:

```ruby
log_location Chef::Log::Syslog.new("chef-client", ::Syslog::LOG_DAEMON)
```

THis will write to the `daemon` facility with the originator set as
`chef-client`.

### Windows Event Logger

The logger can be used by adding the following line to your chef config file:

```ruby
log_location Chef::Log::WinEvt.new
```

This will write to the Application log with the source set as Chef.

## RemoteFile resource supports UNC paths on Windows

You can now use UNC paths with `remote_file` on Windows machines. For
example, you can get `Foo.tar.gz` off of `fooshare` on `foohost` using
the following resource:

```ruby
remote_file 'C:\Foo.tar.gz' do
source "\\\\foohost\\fooshare\\Foo.tar.gz"
end
```

## WindowsPackage resource supports URLs

The `windows_package` resource now allows specifying URLs for the source
attribute. For example, you could install 7zip with the following resource:

```ruby
windows_package '7zip' do
source "http://www.7-zip.org/a/7z938-x64.msi"
end
```

Internally, this is done by using a `remote_file` resource to download the
contents at the specified url. If needed, you can modify the attributes of
the `remote_file` resource using the `remote_file_attributes` attribute.
The `remote_file_attributes` accepts a hash of attributes that will be set
on the underlying remote_file. For example, the checksum of the contents can
be verified using

```ruby
windows_package '7zip' do
source "http://www.7-zip.org/a/7z938-x64.msi"
remote_file_attributes {
:path => "C:\\7zip.msi",
:checksum => '7c8e873991c82ad9cfcdbdf45254ea6101e9a645e12977dcd518979e50fdedf3'
}
end
```

To make the transition easier from the Windows cookbook, `windows_package` also
accepts the `checksum` attribute, and the previous resource could be rewritten
as:

```ruby
windows_package '7zip' do
source "http://www.7-zip.org/a/7z938-x64.msi"
checksum '7c8e873991c82ad9cfcdbdf45254ea6101e9a645e12977dcd518979e50fdedf3'
end
```
# Chef Client Release Notes 12.5.0:
2 changes: 1 addition & 1 deletion VERSION
@@ -1 +1 @@
12.4.0.rc.2
12.5.0.current.0
2 changes: 1 addition & 1 deletion chef-config/lib/chef-config/version.rb
Expand Up @@ -20,6 +20,6 @@
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

module ChefConfig
VERSION = '12.4.0.rc.2'
VERSION = '12.5.0.current.0'
end

2 changes: 1 addition & 1 deletion lib/chef/version.rb
Expand Up @@ -21,7 +21,7 @@

class Chef
CHEF_ROOT = File.dirname(File.expand_path(File.dirname(__FILE__)))
VERSION = '12.4.0.rc.2'
VERSION = '12.5.0.current.0'
end

#
Expand Down

0 comments on commit 82ecae4

Please sign in to comment.