knife-flow
knife-flow copied to clipboard
Using knife-flow with TDD
Hi,
I was wondering if you had any suggestions for using knife-flow with a TDD approach using minitest-handler-cookbook.
https://github.com/btm/minitest-handler-cookbook
If were doing TDD I would write the tests then watch them fail. At that point I would start writing my recipes. Then run the tests and iterate again.
With that said and using knife-flow I see this happening
- Write tests, use knife increment
- Run chef-client on a box watch tests fail
- Write recipes, use knife increment
- Run chef-client on box see if tests pass
- Repeat if necessary
- After everything looks good knife promote
- Have our Continuous integration system run chef-client on a machine with the candidate environment and validate tests pass
- If that passes then do a knife release to push it to the production system
During all these knife increment and knife promotes the patch level keeps going up. Basically the production system could go from 1.0.0 -> 1.0.15 is that correct without ever having 1.0.5 make it to the production system and environment, right?
If that is fine do you recommend that the major or minor versions get bumped prior to using any of the knife-flow commands so you start back at a 0 patch level? I guess it depends on what each major, minor and patch levels mean.
Thanks in advance.
Jay