"TerminatingError: Error retrieving item from path" while using PowerShell code when creating Machine Catalogs for MCS in Azure

"TerminatingError: Error retrieving item from path" while using PowerShell code when creating Machine Catalogs for MCS in Azure

book

Article ID: CTX239676

calendar_today

Updated On:

Description

PowerShell cmd let "$provScheme" fails with following error while creating MCS catalog on Azure using Citrix blog with Narrow Scope Service Principal:

Azure Role Based Access Control in XenApp & XenDesktop

https://www.citrix.com/blogs/2016/11/09/azure-role-based-access-control-in-xenapp-xendesktop/

PS C:\> $provScheme


TaskId                       : xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Active                       : False
Host                         : Server name
DateStarted                  : mm/dd/yyyy hr:mm:ss AM/PM
Metadata                     : {}
Type                         : NewProvisioningScheme
Status                       : Finished
CurrentOperation             : 
TaskExpectedCompletion       : 
LastUpdateTime               : mm/dd/yyyy hr:mm:ss AM/PM
ActiveElapsedTime            : 1
DateFinished                 : mm/dd/yyyy hr:mm:ss AM/PM
TerminatingError             : Error retrieving item from path /IMAGE-resource-group.resourcegroup/imagestorage.storageaccount/images/IMAGE-name.vhd.vhd Not appended with a valid AzureInvetoryType.
                               Parameter name: fullPath
                               Actual value was IMAGE-resource-group.resourcegroup\imagestorage.storageaccount\images.container.
Storage                      : {}
WorkflowStatus               : Terminated

You may see following exception in Powershell:
"Invalid provisioning scheme"


Citrix Studio would show following error:

User-added image

User-added image

Application event log in Delivery Controller has following event logged:

Log Name:      Application
Source:        Citrix Machine Creation Service
Date:          mm/dd/yyyy hr:mm:ss AM/PM
Event ID:      2007
Task Category: None
Level:         Error
Keywords:      
User:          NETWORK SERVICE
Computer:      <FQDN ServerName>
Description:
Provisioning scheme creation workflow operation failed : System.InvalidOperationException: UnknownError in Create ProvScheme, Get snapshot {0} ---> PluginUtilities.Exceptions.WrappedPluginException: Error retrieving item from path /IMAGE-resource-group.resourcegroup/imagestorage.storageaccount/images/image-name.vhd.vhd ---> PluginUtilities.Exceptions.WrappedPluginException: Not appended with a valid AzureInvetoryType.
Parameter name: fullPath
Actual value was image-resource-group.resourcegroup\imagestorage.storageaccount\images.container.
 

Resolution

1. Change the letters in image path to lowercase at $template in the script:
Before:
IMAGE-resource-group.resourcegroup/imagestorage.storageaccount/images/IMAGE-name.vhd.vhd

After correction:
image-resource-group.resourcegroup\imagestorage.storageaccount\images\image-name.vhd


2. The image path should be corrected to include container extension as highlighted below:
From
\image-resource-group.resourcegroup\imagestorage.storageaccount\images\image-name.vhd

to:
\image-resource-group.resourcegroup\imagestorage.storageaccount\images.container\image-name.vhd

Problem Cause

1. Azure plug-in doesn't support capital letters in the master image name
2. The master image path had ".container" missing for the image folder on Azure