Don’t forget the NodeName in your DSC ConfigurationData

Today I created a new configuration data for a DSC configuration and got the following error: all elements of AllNodes need to be hashtable and has a property ‘NodeName’. The config looked good: AllNodes was a hashtable and it had the desired node name. So where was the error? I forgot one little thing: the global configuration needs a property NodeName set to an asterisk. Adding this fixed the error. This is really easy – but a search for the error message did not return any useful results. Therefor I decided to share it anyway… Continue reading Don’t forget the NodeName in your DSC ConfigurationData

Be careful with custom variable names in Release Management

If you use Visual Studio Release Management vNext / 2013 with PowerShell/DSC you probably have a lot of custom configuration variables that you pass to your scripts. Be careful when you choose the names for these variables because! There are a lot of reserved words. For example the word UserName is reserved. This leads to very odd error messages that are really hard to track down: System.AggregateException: One or more errors occurred. —> Microsoft.TeamFoundation.Release.Common.Helpers.OperationFailedException: Permission denied while trying to connect to the target machine <hostname> on the port:5985 via power shell remoting. Please check the following link for instructions: http://go.microsoft.com/fwlink/?LinkID=390236System.Management.Automation.Remoting.PSRemotingTransportException: … Continue reading Be careful with custom variable names in Release Management

Deploy to none domain machines with Visual Studio Release Management vNext

There is a lot of documentation on how to deploy to machines outside your domain using agent based deployment ( i.e. on msdn) using shadow accounts. But I couldn’t find any documentation if and how this is done using vNext / agent-less deployment. If you deploy to server outside your domain you get the following error messge: Connecting to remote server <name> failed with the following error message : WinRM cannot process the request. The following error with errorcode 0x80090311 occurred while using Kerberos authentication: There are currently no logon servers available to service the logon request.  So this is … Continue reading Deploy to none domain machines with Visual Studio Release Management vNext

Side notes for SharePoint and O365 developers from #MSIgnite

I’m not trying to cover all relevant aspects of SharePoint announcements that are made the last days on Microsoft Ignite – I’m sure you’re all following it closely. I just want to highlight the most important aspects for SharePoint developers and the impact they have on my work. Provisioning Engine The Office365 Developer Patterns and Practices group announced a provisioning engine for provisioning SharePoint artifacts (sites, lists, fields, content types etc.). It takes a xml file with a custom syntax as the input and provisions the content using the API. It also works both ways – you can use the … Continue reading Side notes for SharePoint and O365 developers from #MSIgnite

Moving from PowerShell DSC to Release Management vNext DSC

If you’ve learned plain PowerShell Desired State Configuration (DSC) and then move to Visual Studio Release Management vNext there are a lot of gotchas that can cost you many hours or event days to figure them out. I thought I share some things I’ve learned the hard way to get people up and running more quickly. If you use plain DSC you normally have one structural configuration for the entire environment and an environment specific configuration that you change for each environment. Environment Configuration(Dev/Test/Prod) $TargetFolder = “C:\inetpub\wwwroot\Demo”$WebServerCount = 2 .psd1 Structural Configuration WindowsFeature IIS{    Name = “Web Server”    Ensure = … Continue reading Moving from PowerShell DSC to Release Management vNext DSC