microsoft / azure_arc

Automated Azure Arc, Edge, and Platform environments
https://aka.ms/ArcJumpstart
Creative Commons Attribution 4.0 International
738 stars 546 forks source link

Deploying Azure IoT Operations - Manufacturing Scenario fails during VM's LogonScript.ps1 #2753

Open marshallbentley opened 3 hours ago

marshallbentley commented 3 hours ago

Note: For ease of issues and pull requests management and tracking, we kindly ask you to provide a meaningful and concise title to this issue and answer all questions to the best of your ability.

Is your issue related to a Jumpstart scenario, ArcBox, HCIBox, or Agora?

Jumpstart: https://azurearcjumpstart.com/azure_arc_jumpstart/azure_edge_iot_ops/aio_manufacturing

Describe the issue or the bug

After following the guide, when provisioning the deploying via azd, my VM fails during the LogonScript.ps1 script. Further troubleshooting reveals many environment variables, such as spnClientID and spnTenantId which should have been set earlier in Bootstrap.ps1 are null. This causes the script to eventually fail and the environment to never come up.

Additional logs from LogonScript.log on the VM:

[4:20 PM] INFO: Configuring Azure PowerShell
PS>TerminatingError(ConvertTo-SecureString): "Cannot bind argument to parameter 'String' because it is null."
ConvertTo-SecureString : Cannot bind argument to parameter 'String' because it is null.
At C:\AIO\PowerShell\LogonScript.ps1:231 char:41
+ $azurePassword = ConvertTo-SecureString $spnClientSecret -AsPlainText ...
+                                         ~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [ConvertTo-SecureString], ParameterBindingValidationException
    + FullyQualifiedErrorId : 
ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ConvertToSecureStringCommand
ConvertTo-SecureString : Cannot bind argument to parameter 'String' because it is null.
At C:\AIO\PowerShell\LogonScript.ps1:231 char:41
+ $azurePassword = ConvertTo-SecureString $spnClientSecret -AsPlainText ...
+                                         ~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidData: (:) [ConvertTo-SecureString], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.ConvertToSe
   cureStringCommand

The variable '$azurePassword' cannot be retrieved because it has not been set.
At C:\AIO\PowerShell\LogonScript.ps1:232 char:79
+ ... tem.Management.Automation.PSCredential($spnClientID , $azurePassword)
+                                                           ~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (azurePassword:String) [], RuntimeException
    + FullyQualifiedErrorId : VariableIsUndefined
The variable '$azurePassword' cannot be retrieved because it has not been set.
At C:\AIO\PowerShell\LogonScript.ps1:232 char:79
+ ... tem.Management.Automation.PSCredential($spnClientID , $azurePassword)
+                                                           ~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (azurePassword:String) [], RuntimeException
    + FullyQualifiedErrorId : VariableIsUndefined

The variable '$psCred' cannot be retrieved because it has not been set.
At C:\AIO\PowerShell\LogonScript.ps1:233 char:31
+ Connect-AzAccount -Credential $psCred -TenantId $spnTenantId -Service ...
+                               ~~~~~~~
    + CategoryInfo          : InvalidOperation: (psCred:String) [], RuntimeException
    + FullyQualifiedErrorId : VariableIsUndefined
The variable '$psCred' cannot be retrieved because it has not been set.
At C:\AIO\PowerShell\LogonScript.ps1:233 char:31
+ Connect-AzAccount -Credential $psCred -TenantId $spnTenantId -Service ...
+                               ~~~~~~~
    + CategoryInfo          : InvalidOperation: (psCred:String) [], RuntimeException
    + FullyQualifiedErrorId : VariableIsUndefined

To Reproduce

Expected behavior

Follow the guide and deploy via azd, entering the variables as prompted.

Environment summary

Following the guide and deploying via azd deploys successfully.

Have you looked at the Troubleshooting and Logs section?

Screenshots

Additional context

microsoft-github-policy-service[bot] commented 3 hours ago

Hi marshallbentley! Thank you for opening this issue. We appreciate your contribution and welcome you to our community! We are glad to have you here and to have your input on the Arc Jumpstart.

mrhoads commented 3 hours ago

Hi @marshallbentley - thanks for reporting the issue. I'm taking a look at the AIO scenario and the error you're describing. I'll follow-up as soon as I can.