chef-partners/cookbook-guide

Name: cookbook-guide

Owner: Chef Partners

Description: Chef Technical Alliances guide for writing quality cookbooks

Created: 2015-11-12 17:06:13.0

Updated: 2018-04-03 17:14:31.0

Pushed: 2018-04-03 17:14:29.0

Homepage:

Size: 193

Language: Ruby

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

This is Chef's Partner Engineering guide for writing cookbooks. It is intended to provide guidelines for how to write high-quality cookbooks for sharing with the Chef Community. The content is in the docs/ directory or you may view it as a presentation.

Contributing

These guidelines are a living document, so feel free to send PRs and we'll discuss and incorporate the feedback.

Viewing and Downloading the Presentation

The format is reveal-md. You may use Vagrant and virtualbox to view the presentation without installing reveal-md and its dependencies. To view the deck:

Building Locally with Chef

If you prefer to work with reveal-md directly instead of the Vagrant workflow, you can use chef-solo to bootstrap the cookbook. NOTE: this is only on Ubuntu at this time.

do chef-solo -c solo.rb -j node.json

If you would prefer the manual steps:

Building the Docker container

I added a Dockerfile because spinning up the Vagrant box felt slow.

You can also pull from the docker hub with the following:

cker pull jjasghar/chef-partner-cookbook-guide:latest
cker run -p 1948:1948 --name='chef-partner-cookbook-guide' -d jjasghar/chef-partner-cookbook-guide
en http://localhost:1948/index.md

Or if you'd prefer here are the steps to build the container locally:

t clone http://github.com/chef-partners/cookbook-guide
 cookbook-guide

Build the image yourself.

cker build -t="$USER/chef-partner-cookbook-guide" . --no-cache

After it's built, all you have to do is:

cker run -p 1948:1948 --name='cookbook-guide' -d $USER/chef-partner-cookbook-guide

Now you should be able to go to http://localhost:1948/index.md and see the presentation.

Building a Habitat Plan.

TODO: I'm in the process of figuring this out :metal:

Updating the Presentation

The content is the Markdown files in the docs directory, but the index.md is dynamically generated inside the Vagrantfile. You may vagrant ssh guide in and change the running command to point to the /vagrant/docs/ directory and edit these and refresh your browser to see the content update. You may also vagrant provision guide if you want to refresh everything without destroying the VM. The file docs/theme/chef.css controls the styling for the presentation.


This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.