VMware users and partners are irked by recent changes to VMware's PowerCLI scripting tool that break scripts written in earlier versions. Adding insult to injury, VMware did not give them adequate notice
PowerCLI is a scripting tool for managing vSphere environments that integrates with Windows PowerShell, a commonly used interface for automating repetitive functions. Some users work with PowerCLI via third-party tools that expose both PowerCLI and PowerShell through a graphical user interface (GUI).
The most problematic changes made in PowerCLI 4.1, released in July, and in PowerCLI 4.1.1, released last month, were to the naming conventions used to refer to objects. This means scripts written with PowerCLI 4.0, using the older object names, will not work correctly, and users reliant on PowerCLI 4.0 scripts will have to painstakingly update them to work in version 4.1 or version 4.1.1.
A headache for users
The extent of the changes to PowerCLI 4.1.x means that most users will have to update their old scripts -- an onerous task, users say. According to one virtualization admin with extensive experience using PowerCLI, "you don't have to be an expert to encounter the breaking change," in the new version. In addition to the changes to naming conventions, the new versions of PowerCLI also deprecate certain features -- in other words, discourage their use, he said, and these changes are also just as obvious. "It'll spit out warnings that a specific property has been deprecated, and I'm saying, 'I'm just looking at the properties of a VM; why are you spitting this out on the screen?'"
Even if their old scripts still work, most PowerCLI 4.0 users will probably have to upgrade to the new version. Technically, PowerCLI 4.0 will probably still work in vSphere 4.1 environments, experts say, but only PowerCLI 4.1 and above are able to address new features in the latest vSphere release. PowerCLI 4.1 and 4.1.1 may also contain bug fixes that users have been waiting for. And while it's unclear at this point whether VMware will support using PowerCLI 4.0 with vSphere 4.1, industry experts say it's doubtful.
Users also say they are just as peeved about the way VMware communicated with them about the changes as they are with the changes themselves. Said the experienced PowerCLI admin, "You don't introduce breaking changes into an enterprise [product] without serious consideration, you don't do it in a minor dot release where people just expect minor bug fixes, and you make it so you can run the two versions side by side and get into the new version slowly."
"I would prefer if VMware would sometimes actually listen to the community and their users, and work with them to solve or avert such issues before they happen," said Maish Saidel-Keesing, a virtual infrastructure admin for a technology company in Israel, who said he, too, had been "bitten" by the changes. "In this instance. this was not done. And it is a great shame."
PowerCLI changes felt far and wide
The ripple effect of the changes extends beyond users' data centers and into the materials they use to learn things like scripting with PowerCLI, said one vExpert and VMware certified consultant, Dave Convery, who also wrote about the ongoing issues within PowerCLI 4.1.1 in a blog post Monday.
"As someone who uses and evangelizes PowerCLI…now there's a whole list of [PowerCLI education resources] that are also broken, and it's frustrating," Convery told SearchServerVirtualization.com this week.
This is especially true, he added, given that PowerCLI will become the main interface for scripting once the ESX console is retired with vSphere 5 this year. "Now I have to say, here's your replacement, but oh, by the way, they made so many changes to it that all the helper tools already out there aren't going to work for you."
Quest Software's VMware PowerPack, the PowerCLI module to its PowerGUI scripting product, was also affected by the 4.1.1 changes, prompting Kirk Munro, a product manager for Quest Software, to issue a public apology via a blog post in mid-December. Quest is struggling with how best to rectify the situation.
"What will most likely happen [with PowerGUI] is that we will create a version of the VMware PowerPack that requires PowerCLI 4.1.1 or later, and that we will try to support two different versions of the PowerPack for a while until we eventually deprecate the older version," wrote Munro. "That is not what I would like to do, but my hand is being forced here, so that is the only realistic option I see in front of me."
VMware declined to comment as of press time.
Beth Pariseau is a senior news writer for SearchServerVirtualization.com. Write to her at firstname.lastname@example.org.