In a previous post (Cooking up deployments on stacked clouds) I looked at using UrbanCode Deploy with OpenStack and Chef. I showed one way of creating a stack from a Heat template, injecting the UCD agent and Chef into one of the newly provisioned servers, cooking a Chef recipe and deploying an application on it. This time round I look at how to do almost the same thing with VMware vSphere.
Managing database schema changes can be a non-trivial task. Very often the danger associated with potential bad changes being deployed makes DBAs very protective of their territories and resistant to changing tried and true methods.
However, the push towards more Agile development methods, adoption of DevOps practices and Continuous Delivery capabilities is including database development in its embrace; the last 10 years or so has seen a lot of work towards aligning database development with application development best practices. That said, there are probably quite a few organisations out there where the normal practice for deploying database changes is to use some sort of “list of instructions” and various GUI DB tools with maybe some scripts thrown in. Even adopting practices such as SCM and CI can appear daunting.
Calling Rational Team Concert an old dog isn’t fair – it’s only just over 5 years old – and I mean it in the nicest possible way in the context of the Jazz Jumpstart team being “old”, and the Rational Emerging Technologies Team, well, “emerging”.
Anywho, as is my wont, I was going through what could be in the next CLM release, noticed the bit about Rational Team Concert Build and IBM UrbanCode Deploy and decided to try out this “emerging” feature with Rational Team Concert 4.0.5 RC1.
We’ve always had pets since I was very young: dogs, cats, cows, goats, rabbits, a fox that escaped and wiped out the rabbits; even a “Bambi” that disappeared, though we had some fantastic chilli venison a couple of nights later. “Popo” was one of a long line of dogs we’ve had; a mostly unremarkable Pomeranian; memorable for the fact that the day he was given to us, he was so terrified of his new surroundings and all us kids squealing over him that he jumped up on mum’s lap and did “his business” on her:-)
My previous post on populating and testing a large Jazz repository could be tested with JMeter was primarily focused on the Work Item capability in RTC. I also needed to populate the repository with lots of SCM data and rather than take the “dumb” (ie. random) path as I had done with the Work Items, I wanted to use a more “realistic” set of artifacts.
I didn’t have to look very far: the Android platform which has apparently become the leading smart phone platform (canalys.com) and 300+ million Android-based smartphone activations (prweb.com). There are already a bunch of posts on Jim’s blog and Jazz.net on how to use RTC for Android app development, so I turned my attention to the Android Platform source, from the AOSP, which proves to be a different kettle of fish when it comes to SCM.
Continuing my journey on the JMeter road, I found Jmeter has a number of other features that help to make Test Plans more generic and useful.
Tox wrote (is writing) a series on monitoring Jazz performance. Timely indeed as I’ve been working out just how a CLM server performs under load : a single-tier server holding about 3 million Work Items, with 300+ project areas, 3000 registered users (upto 500 concurrent with 20% of them raising ~5 work items an hour ), 50+ GB of SCM content (120 components, 300 streams).
My TV blew up.
We rarely watch TV anyway (except for any All Blacks games, The Game of Thrones, Dexter, Sherlock Holmes, Modern Family and House of course:-) so we got rid of the Foxtel cable box and haven’t had a TV for a couple of months now. Seriously, no TV. Haven’t missed it. Well, until my wife and I were in the living room last week, with the fire going and she says “Would have been nice to flick through the channels to see what’s on, wouldn’t it?”. So I set out to buy one, did a bit of research on what was out there and settled on a Samsung Smart TV. No, not the really big, really cool one with the motion/voice control, facial recognition.
My main requirement is simplicity. I have an Airport Express, an Apple TV, a T-Box, DVD player, a USB drive full of home videos and copies of my DVDs, a HD PVR that I use to get the content out of the T-Box onto the USB drive so I can watch it on my 27″ iMac in the other room and a HMDI switch as the TV only had one HDMI input. Yeah, a lot of messy cables and messy moving,copying stuff around just so I can kind of watch/listen to any of my content anywhere. Part of the problem was my old TV, it had neither USB nor network connectivity.
The new Samsung that’s coming over in a couple of days does everything I need, it does 3D and is about a fifth the thickness and weight of my old one. I was rubbing my hands in glee at the thought of hooking it all up when my wife took the glee out of it when she pointed out that all I need to do is hook up 3 HDMI cables and one Ethernet cable to it. Bummer! I’ve had to put all those extra cables, adapters, connectors etc in the garage.
What on earth does this have to do with Jazz? Not much, except that (if I’m allowed!) I can have a 40″ full HD external display on which to put all those Eclipse, browser, Notes, RDP windows when I’m working:-) And still watch in one corner the All Blacks thrash whichever team happens to get past the Haka.
Apparently all this multi-tasking, context switching isn’t so good for productivity, but I digress.
My brain made some vague connections between my new TV and Jazz (RTC specifically) when I was reading Robin’s post on finding files and re-reading Jean-Michel’s Christmas Gift post. As I said to the good members of the NSW South Coast chapter of the ACS last week: the word for the day is “integration“. What about “integration”? Well, it doesn’t exist in RTC’s vocbulary. Oh, sure it does when you want to connect it to all sorts of other systems and tools. But when talking about providing all the capabilities that make development teams effective and productive – version control, task tracking, development planning, build management, process execution, in-context collaboration, real-time status updates- the word “integration” isn’t one I’d use with RTC. Because all of this stuff is “just there”. I don’t need that extra “cable” or “adapter” or “connector” just to get what I see as fundamental capabilites that every development team should have.
On the other hand this missing word was also a problem for me. Just as I enjoyed working out how connect all these different audio/visual components together, I also used to enjoy integrating different tools together and making them sing. Didn’t matter whether these were custom built integrations (like one I built between FoxPro and Quattro Pro way back in 1991) or “out-of-the-box” integrations (your pick of your favourite combination of ClearQuest, ClearCase, Bamboo, Crucible, Subversion, Cruise Control, Jira, Git, Bugzilla ad nauseum). What takes the glee out of this was that all the time and effort I was spending in integrating stuff meant less time and effort devoted to actually using the things that were being integrated.
In other words: the half hour I spent fiddling with stuff was a half hour of a House episode missed.