Friday, May 16, 2014

Updated PowerShell V5 Preview Released

The Microsoft PowerShell team has just released an updated beta version of PowerShell Version 5. To give the release it’s full title, it is known as: Windows Management Framework 5.0 Preview May 2014. This update comes only a month after a prior release – showing that the PowerShell team sure can turn things around fast!

This update is available on http://www.microsoft.com/en-us/download/details.aspx?id=42936. The update consists of three files – two install packages (one for X86, the other for X64) and a small set of release notes.

In order to install it you must be running the LATEST OSs  windows 8.1 or Server 2012 R2. According to the release notes, All versions of Windows 8.1 are supported, as are all versions of Server 2012 R2 (except Itanium [SIC as there IS no version of Server 2012 R2 for Itanium as per http://blogs.technet.com/b/windowsserver/archive/2010/04/02/windows-server-2008-r2-to-phase-out-itanium.aspx)]). I continue to find it curious that these betas are not supported on Windows 8 and Windows 7 (and related server products). I suspect that this may be a testing issue – testing takes time and as we know, to ship is to chose. Doesn’t really matter for me as my main servers and my laptop are up to spec. If nothing else, this decision is pushing me to upgrade to Server 2012 R2 on my development workstation – but before I do that, I need more RAM and a new disk so it’s going to have to wait a few weeks.

Installing this is easy – just navigate to the  download site, get the download package and run it. Installing it on a Windows 8.1 system does not even require a reboot to do the install.

So what’s new?

Of course, there are bug fixes etc. – at least I expect so. But they aren’t mentioned. There are also included the same two big items in the first WMF preview: OneGet and the Network Switch cmdlets.

But the most exciting addition here is a new module: PowerShellGet. The Earlier WMF preview contained a module called OneGet, which helps you to find programs and packages in the external world. I used PSG to get me the Sysinternals tools, and a nice  XML/HTML basic editor called bluefish. 

PowerShellGet uses similar logic to find you new PowerShell modules. The module has just 4 cmdlets: Find-Module, Install-Module, Publish-Module, and Update-Module. Simple and elegant – and it works a real treat! It enables you to find modules, and then download and install them (and update them in due course).

The documentation does not really make clear where these modules come from, but with a bit of detective work, the modules are found and published from/to the PowerShell resource Gallery (https://msconfiggallery.cloudapp.net/).

In order to use Find-module, you need an external program, Nuget.exe (but the first time you use Find-Module you are nicely prompted for it). Once you download this, Find-Module finds a total of 52 modules, including some neat ones like PowerShellIseModule, TCPServer, and LocalUserManagement to name but a few). To install new modules requires administration rights.

Using this module looks like imagethis:

This is a nice touch – and I will certainly be exploring more of these modules.

All in all, this is a nice update.And it’s going to give me more work to do, especially in the area of PowerShell get. DSC is the other aspect I need to dig more into – and finding the dsc resource modules gives me more incentive!

I can’t wait to see what comes next?

 

No comments: