This was a side project to learn some Go. Don't use this in production. Support not given, use at your own risk, etc.
bakeit
is a platform agnostic chef bootstrap tool. Unlike knife bootstrap
,
bakeit is written for end points not servers. All required configuration
data is compiled into a single static binary that can be ran on the end point
for bootstrapping.
- No extra dependencies necessary on your end points
- Shared code between each platform where possible
- One file, config.go, holds all configuration settings
- Works on Mac, Linux (coming soon) and Windows
This section is designed for users new to the Go ecosystem that just want to build and use this project.
- Download and install Go 1.9
- Set required Go variables
export GOPATH=$(go env GOPATH) PATH=$PATH:${GOPATH}/bin
- Create the proper go path
mkdir -p $GOPATH/src/github.com/clburlison/bakeit
- Clone this repo
git clone git@github.com:clburlison/bakeit $GOPATH/src/github.com/clburlison/bakeit
- Download dependencies
make deps
- Modify the config.go file. Make sure to modify the following keys:
ChefClientChefServerURL
- The URL to your chef serverChefClientValidationClientName
- The name of your validator fileValidationPEM
- The contents of your validator certificateOrgCert
- (Optional) The contents of your organization certificate
- Build
make build-all
- Copy the correct output file from build/ to a machine and run it.
- Running instructions
# Linux/macOS sudo /path/bakeit # Windows. Open a command prompt as administrator /path/bakeit.exe
Coming soon!
See CONTRIBUTING.md
See CHANGELOG.md
MIT © Clayton Burlison