{"action":"closed","issue":{"url":"https://api.github.com/repos/PowerShell/xSQLServer/issues/16","labels_url":"https://api.github.com/repos/PowerShell/xSQLServer/issues/16/labels{/name}","comments_url":"https://api.github.com/repos/PowerShell/xSQLServer/issues/16/comments","events_url":"https://api.github.com/repos/PowerShell/xSQLServer/issues/16/events","html_url":"https://github.com/PowerShell/xSQLServer/issues/16","id":121026586,"number":16,"title":"Default value for xSQLServerSetup.UpdateSource causes deployment error","user":{"login":"Arturas-K","id":16191469,"avatar_url":"https://avatars.githubusercontent.com/u/16191469?v=3","gravatar_id":"","url":"https://api.github.com/users/Arturas-K","html_url":"https://github.com/Arturas-K","followers_url":"https://api.github.com/users/Arturas-K/followers","following_url":"https://api.github.com/users/Arturas-K/following{/other_user}","gists_url":"https://api.github.com/users/Arturas-K/gists{/gist_id}","starred_url":"https://api.github.com/users/Arturas-K/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Arturas-K/subscriptions","organizations_url":"https://api.github.com/users/Arturas-K/orgs","repos_url":"https://api.github.com/users/Arturas-K/repos","events_url":"https://api.github.com/users/Arturas-K/events{/privacy}","received_events_url":"https://api.github.com/users/Arturas-K/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-12-08T15:08:37Z","updated_at":"2016-01-20T09:45:47Z","closed_at":"2016-01-20T09:45:47Z","body":"Hi,\r\n\r\nI think that current default value for **xSQLServerSetup.UpdateSource** of **\".\\Updates\"** is causing unexpected error even if **xSQLServerSetup.UpdateEnabled = \"False\"** is set.\r\n\r\n\r\n\r\nI suggest that this parameter should be updated to default **MU**.\r\nTo reproduce this, you can download an iso image from MSDN subscription for SQL Server 2012 with SP3, if you extract contents and use it as your source.\r\nThen use this Consiguration to install management tools:\r\n```PowerShell\r\nConfiguration DataTier\r\n{\r\n    Import-DscResource -Module xSQLServer\r\n\r\n    # A Configuration expects at least one Node\r\n    Node $AllNodes.NodeName\r\n    {\r\n        # Set DCM Settings for each Node \r\n        LocalConfigurationManager \r\n        { \r\n            RebootNodeIfNeeded = $True \r\n            ConfigurationMode = \"ApplyOnly\" \r\n        } \r\n\r\n\t\tWindowsFeature \"NET-Framework-Core\"\r\n        {\r\n            Ensure = \"Present\"\r\n            Name = \"NET-Framework-Core\"\r\n        }\r\n\r\n\t\txSqlServerSetup \"SQLMT\"\r\n\t\t{\r\n\t\t\tDependsOn = \"[WindowsFeature]NET-Framework-Core\"\r\n\t\t\tSourcePath = $Node.SourcePath\r\n            SourceFolder = \"SQLServer2012_Developer_with_SP3_x64\"\r\n\t\t\tInstanceName = \"NULL\"\r\n\t\t\tFeatures = \"SSMS,ADV_SSMS\"\r\n            SetupCredential = $Node.InstallerServiceAccount\r\n            UpdateEnabled = \"False\"\r\n            #UpdateSource = \"\"\r\n\t\t}\r\n    } \r\n}\r\n```\r\nif this is run then you get very unfriendly error:\r\n```\r\nVERBOSE: [PLLWINMXMLDBINT]: LCM:  [ Start  Set      ]  [[xSQLServerSetup]SQLMT]\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'NetUse'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'ResolvePath'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'StartWin32Process'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'WaitForWin32ProcessEnd'\r\n.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Path: C:\\Install\\SQLServer2012_Developer_wi\r\nth_SP3_x64\\setup.exe\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'NetUse'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'ResolvePath'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'StartWin32Process'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'WaitForWin32ProcessEnd'\r\n.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Path: C:\\Install\\SQLServer2012_Developer_wi\r\nth_SP3_x64\\setup.exe\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Arguments: /Quiet=\"True\" /IAcceptSQLServerL\r\nicenseTerms=\"True\" /Action=\"Install\" /InstanceName=\"NULL\" /UpdateEnabled=\"False\" /UpdateSource=\".\\Updates\" /Features=\"SSMS,\r\nADV_SSMS\"\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Process matching path 'C:\\Install\\SQLServer\r\n2012_Developer_with_SP3_x64\\setup.exe' started in process ID 4892\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'NetUse'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'ResolvePath'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'StartWin32Process'.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Importing function 'WaitForWin32ProcessEnd'\r\n.\r\nVERBOSE: [PLLWINMXMLDBINT]:                            [[xSQLServerSetup]SQLMT] Path: C:\\Install\\SQLServer2012_Developer_wi\r\nth_SP3_x64\\setup.exe\r\nVERBOSE: [PLLWINMXMLDBINT]: LCM:  [ End    Set      ]  [[xSQLServerSetup]SQLMT]  in 86.4380 seconds.\r\nPowerShell DSC resource MSFT_xSQLServerSetup  failed to execute Set-TargetResource functionality with error message: \r\nSet-TargetResouce failed \r\n    + CategoryInfo          : InvalidOperation: (:) [], CimException\r\n    + FullyQualifiedErrorId : ProviderOperationExecutionFailure\r\n    + PSComputerName        : PLLWINMXMLDBINT.cig.local\r\n \r\nThe SendConfigurationApply function did not succeed.\r\n    + CategoryInfo          : NotSpecified: (root/Microsoft/...gurationManager:String) [], CimException\r\n    + FullyQualifiedErrorId : MI RESULT 1\r\n    + PSComputerName        : PLLWINMXMLDBINT.cig.local\r\n \r\nVERBOSE: Operation 'Invoke CimMethod' complete.\r\nVERBOSE: Time taken for configuration job to complete is 90.163 seconds\r\n```\r\n\r\nTo get actual error you need to dig into SQL Setup log on target machine:\r\n```\r\nException summary:\r\nThe following is an exception stack listing the exceptions in outermost to innermost order\r\nInner exceptions are being indented\r\n\r\nException type: Microsoft.SqlServer.Chainer.Infrastructure.InputSettingValidationException\r\n    Message: \r\n        The folder path, 'C:\\Install\\SQLServer2012_Developer_with_SP3_x64\\Updates', for the UpdateSource parameter does not exist or access is denied. Specify a folder path that exists and can be accessed by SQL Server Setup.\r\n    HResult : 0x84b40000\r\n        FacilityCode : 1204 (4b4)\r\n        ErrorCode : 0 (0000)\r\n    Data: \r\n      SQL.Setup.FailureCategory = InputSettingValidationFailure\r\n      DisableWatson = true\r\n    Stack: \r\n        at Microsoft.SqlServer.Chainer.Infrastructure.InputSettingService.LogAllValidationErrorsAndThrowFirstOne(ValidationState vs)\r\n        at Microsoft.SqlServer.Configuration.BootstrapExtension.ValidateChainerSettingAction.ExecuteAction(String actionId)\r\n        at Microsoft.SqlServer.Chainer.Infrastructure.Action.Execute(String actionId, TextWriter errorStream)\r\n        at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.ExecuteActionHelper(TextWriter statusStream, ISequencedAction actionToRun, ServiceContainer context)\r\n    Inner exception type: Microsoft.SqlServer.Configuration.SmartSetupExtension.InvalidUpdateSourcePath\r\n        Message: \r\n                The folder path, 'C:\\Install\\SQLServer2012_Developer_with_SP3_x64\\Updates', for the UpdateSource parameter does not exist or access is denied. Specify a folder path that exists and can be accessed by SQL Server Setup.\r\n        HResult : 0x85150001\r\n                FacilityCode : 1301 (515)\r\n                ErrorCode : 1 (0001)\r\n        Data: \r\n          UpdateSource = C:\\Install\\SQLServer2012_Developer_with_SP3_x64\\Updates\r\n          WatsonData = Microsoft.SqlServer.Configuration.SmartSetupExtension.InvalidUpdateSourcePath@1\r\n```\r\nIt looks that SQL Setup will check for updates folder even thou you specify not to use updates.\r\nI think better option to have a default of **MU** instead of **.\\Updates**  which will result in better user experience.\r\n\r\nRegards Arturas K."}}