marpaia / chef-golang

Go library to interact with the Chef server API
Other
77 stars 32 forks source link

Add support scripts for regenerating goiardi data #26

Closed spheromak closed 10 years ago

spheromak commented 10 years ago

Goiardi changed the on-disk layout of data in the last build. This adds test/support/regen_data.sh which will wipe out the data and re-populate a goiardi server from the data stored in test/support/chef.

Requires the workstation have knife and Berkshelf3 installed to work right. (chefdk)

spheromak commented 10 years ago

@marpaia fixed the glitch ;) I wouldn't mind doing this ever test run, but it requires installing all of chef-dk to populate the server. I see some simple tooling using the lib itself being able to do this eventually.

spheromak commented 10 years ago

Also note data has been re-laid down here for other tests to pass now.

marpaia commented 10 years ago

@spheromak thanks for finding this and fixing it. sucks that goiardi had a breaking change like that. what do you think about using some strong dependency solution like godep / johnny deps for goiardi so we don't get burned by this again?

spheromak commented 10 years ago

its fine it was only because @ctdk had to change the disk format when he added the mysql driver. That shouldn't change again even if he adds postgres. Also I think eventually I will have tooling so we don't need the pre-baked data, we can just spin it and populate it. Soon as I am done with some stuff I am working on.

ctdk commented 10 years ago

Yeah, on-disk format shouldn't be changing for a while. The only reason it broke this time was because I had to split clients and users into different types, and then have an Actor interface to bind them together again, but going forward I don't see anything needing to change for a while. I'll coordinate better about it next time though.

spheromak commented 10 years ago

@ctdk no stress. Should be way easier to rebuild the data if we need to do so again.

marpaia commented 10 years ago

@ctdk no worries at all, this is a problem with Go's dependency management, completely unavoidable.

spheromak commented 10 years ago

I just see it as downstream dep check. We broke when he updated, and we knew it. :)

marpaia commented 10 years ago

excellent point :+1: