When bare ‘tee | command’ won’t suffice

In my 20 years of touching UNIX/Linux, I’d never had a need for this until today. If you search around for common search terms like ‘stdout to screen and file’, you are likely only to get basic information on how to use the UNIX/Linux tee command.

However, command | tee somefile.out loses the exit code of command if you care about checking it.

The bash solution provided by someone on my employer’s internal Linux mailing list is:

{ command; RESULT=$?; } | tee somefile.out

Though I also just learned that one can reference the PIPESTATUS array instead.

command | tee somefile.out
if [ $PIPESTATUS[0] -ne 0 ]; then
    echo "Error..."
fi

Syslog Output for Chef Runs

A new blog post category was added to my blog for this post: Yak Shave. It was a small yak shave, but a table-flip inducing yak shave nonetheless. Continue reading

Jenkins running Test-Kitchen via Vagrant. On Windows.

If you’re like me and for various reasons (we’ll not discuss) the physical hardware you have access to right now must run Windows, you might think you’re out of luck as far as getting Jenkins running Test-Kitchen jobs as Joshua Timberman shows in Test Kitchen and Jenkins1. But there’s hope if you have patience. I’ll show how I got it working, and I’m looking forward to ideas from you on how to develop better solutions to some of the kludges. There’s not much original material here, but instead of mentioning just my piece of things and linking you coldly to 2 other places for the rest of the info, I figured I would write up as much of the whole experience as I felt up to. Continue reading

Real DevOps Defined: Wonder Twins


I had a “how to define DevOps” revelation last night: It’s the Wonder Twins! Surely everyone remembers the Wonder Twins. You weren’t born before the 1980s? Oh. Well. Anyway… citing the Wikipedia article on Wonder Twins:

If the two are out of reach of each other, they are unable to activate their powers. [...] A rarely-seen aspect of their powers is the ability to break mind control. [...] The Wonder Twins have a pet Space Monkey called Gleek who had a useful prehensile tail and who could act as a conduit for the twins to activate their powers should they be out of reach.

Dibs on the name Gleek for a DevOps Practices enabling tool. And your manager should have his trait mentioned above.

Can we move on now?

A Missed Thank You

While brushing up on TCP today, ancient synapses fired leading me to recall my first forays into network programming in 1992. While on permanent hiatus from CS education at FSU, I took a very long cross-country train trip from Jacksonville, FL through Chicago to L.A. and back to Jacksonville, FL via Pittsburgh, PA. Ideally, the goal was to get away cheaply to spend time figuring out just what the hell the next step might be. Along the way, I stayed with people I had met on social MUDs. Continue reading