A Chef server written in Go, able to run entirely in memory, with optional persistence with saving the in-memory data to disk or using MySQL or Postgres as the data storage backend. Docs: http://goiardi.readthedocs.io/en/latest/index.html
I reached out to @ctdk on Twitter, but I figured I'd open an issue for posterity.
I'm fairly certain Goiardi will no longer work if built with Go 1.6.0+ (at the time of writing). I don't believe there is anything the Goiardi project can do to alleviate this issue as it is a problem in net/http. The problem is due to this commit:
One of the HTTP headers used by the Chef authentication mechanism has a space in it (Hashed Path). Unfortunately, net/http appears to reject the request before your handler has the chance to see it due to the behavior introduced by the commit above. This was tested using an *http.Server with a hand-built ` I've opened an issue on the Go project regarding this being a problem:
I reached out to @ctdk on Twitter, but I figured I'd open an issue for posterity.
I'm fairly certain Goiardi will no longer work if built with Go 1.6.0+ (at the time of writing). I don't believe there is anything the Goiardi project can do to alleviate this issue as it is a problem in
net/http
. The problem is due to this commit:One of the HTTP headers used by the Chef authentication mechanism has a space in it (
Hashed Path
). Unfortunately,net/http
appears to reject the request before your handler has the chance to see it due to the behavior introduced by the commit above. This was tested using an*http.Server
with a hand-built ` I've opened an issue on the Go project regarding this being a problem: