Tuesday, July 22, 2014

Anti-Pattern Accident

Yesterday marked the first day that I fully realized that I am creating a Chef cookbook using an anti-pattern. I needed to use the community OpenSSH cookbook but it does install the version of OpenSSH to meet my requirements. The repositories that I am using did not have the 6.x version which was necessary for the requirements. The operating system and community cookbook would only try to install the 5.x version from the original repos. This was not the desired functionality as we need to upgrade versions.

This is when my anti-pattern failure happens! I decided that I need to modify the cookbook to use the upgrade action rather than install action. Our configuration of the ssh_config and sshd_configs are also very specific so those attributes needed changed as well. I went ahead and made these changes in my copy of the community cookbook. I now realize that this was an unsustainable and poor decision. I will be refactoring over the next few days to get the cookbooks separate and sustainable. Hopefully in the future I will continue to notice my mistakes. I will definitely have to keep an eye on this as I am learning Chef on my own without much guidance. 


Thanks to the following two blogs for helping me to realize my mistake!

My original finding (Great summary/bulleting):
http://dougireton.com/blog/2013/02/16/chef-cookbook-anti-patterns/

Linked from above (Great info):
http://devopsanywhere.blogspot.com/2012/11/how-to-write-reusable-chef-cookbooks.html

Monday, July 7, 2014

I'm back in action!

Long time, no type! That is my bad everyone, I have been very bad about keeping up with this blog. My life was kind of hectic for awhile with the transition from college student to IT professional. I am getting back into the swing of things and am becoming comfortable at my new position.

My role now is a Web Architect with Sogeti USA, as a contractor. I am working on automating server infrastructure through the use of Chef. I am also migrating web applications from their current location to cloud infrastructure.

The position is a blend of infrastructure and development which is a a perfect fit for me. I am looking forward to my role doing Chef work and hope that it continues. I will be posting more about Chef, the issues I've come across, and general things I've learned.