An RFC to standarize on two workflows

This RFC proposes two workflows as "supported", and abstracts
as much of their differences as possible through the use of
additional generators and functionality in the 'chef' command.

If accepted, this RFC would also serve as a guide for tool makers,
as to what the requirements are for maximum converage in the Chef
community.

While other workflows are possible, this RFCs job is to say which
ones we support officially.
So JSON by default, ruby by option?

Adam


On Mon, Aug 4, 2014 at 10:09 AM, Seth Vargo <notifications@github.com>
wrote:

> In great-workflow.md:
>
> > +
> > +```
> > +$ git add snazzy
> > +$ git commit -a -m "One snazzy cookbook"
> > +```
> > +
> > +### How to create your Chef policy (everything that isn't a cookbook)
> > +
> > +To create a new type of policy document, from the top of your chef-repo:
> > +
> > +```
> > +$ chef generate THING name
> > +```
> > +_Note: None of these generators exist yet. They should subsume the functionality of the attendent knife X commands, and be intelligent about which workflow we've chosen._
> > +
> > +This will result in a blank, JSON formatted policy document created in the appropriate
>
> The problem to consider with Ruby is that's it's interpreted. It's the
> same problem as metadata.rb as metadata.json. Consider:
>
> name 'cookbook_foo'version File.read(File.expand_path('../VERSION', __FILE__)).chomp
>
> This will read a local file named VERSION to get the version. This will
> work, and when you upload to the server, you will get the *compiled* JSON
> version like this:
>
> {
>   "name": "cookbook_foo",
>   "version": "1.2.3"}
>
> Ruby gives us the ability to "depend" on external systems, which is both
> good and bad. I could see situations where using Ruby could actually cause
> us problems.
>
> I'm [image: :+1:] on Ruby files, but this is something to consider.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/opscode/chef-rfc/pull/34/files#r15766953>.
>