@@ -42,19 +42,30 @@ function setupEnv() {
4242 # Preload subscriptionId and tenant from context, which will be used in test
4343 # as default. You could change them if needed.
4444 $env.SubscriptionId = $sub = (Get-AzContext ).Subscription.Id
45+ $env.HasSubscription = $env.SubscriptionId -ne $null
46+ if ($env.HasSubscription ){
47+ Write-Host " user has subscription, creating test resources in subscription"
48+ }
49+ else {
50+ Write-Host " user does not have subscription, creating test resources in tenant"
51+ }
52+
4553 $env.Tenant = (Get-AzContext ).Tenant.Id
4654 $testGuid = [guid ]::NewGuid().ToString()
4755 $env.BillingServiceId = " 517f2da6-78fd-0498-4e22-ad26996b1dfc"
4856 $env.BillingProblemClassificationId = " d0f16bf7-e011-3f3b-1c26-3147f84e0896"
4957 $env.FileWorkspaceNameSubscription = " test-ps-$ ( New-Guid ) "
5058 $env.FileWorkspaceNameNoSubscription = " test-ps-$ ( New-Guid ) "
5159
52- New-AzSupportFileWorkspace - Name $env.FileWorkspaceNameSubscription
53- New-AzSupportFileWorkspacesNoSubscription - Name $env.FileWorkspaceNameNoSubscription
54-
5560 $testFilePath = Join-Path $PSScriptRoot files test2.txt
56- New-AzSupportFileAndUpload - WorkspaceName $env.FileWorkspaceNameSubscription - FilePath $testFilePath
57- New-AzSupportFileAndUploadNoSubscription - WorkspaceName $env.FileWorkspaceNameNoSubscription - FilePath $testFilePath
61+ if ($env.HasSubscription ){
62+ New-AzSupportFileWorkspace - Name $env.FileWorkspaceNameSubscription
63+ New-AzSupportFileAndUpload - WorkspaceName $env.FileWorkspaceNameSubscription - FilePath $testFilePath
64+ }
65+ else {
66+ New-AzSupportFileWorkspacesNoSubscription - Name $env.FileWorkspaceNameNoSubscription
67+ New-AzSupportFileAndUploadNoSubscription - WorkspaceName $env.FileWorkspaceNameNoSubscription - FilePath $testFilePath
68+ }
5869
5970 $testTicketName = " test-$testGuid "
6071 $advancedDiagnosticConsent = " no"
@@ -101,29 +112,31 @@ function setupEnv() {
101112 $env.AddWithCache (" Subject" , $subject , $UsePreviousConfigForRecord )
102113 $env.AddWithCache (" Body" , $body , $UsePreviousConfigForRecord )
103114
104- write-host " creating a support ticket request at subscription level"
105- $supportTicketSubscription = New-AzSupportTicket - Name $env.Name - AdvancedDiagnosticConsent $env.AdvancedDiagnosticConsent - ContactDetailCountry $env.ContactDetailCountry - ContactDetailFirstName $env.ContactDetailFirstName - ContactDetailLastName $env.ContactDetailLastName - ContactDetailPreferredContactMethod $env.ContactDetailPreferredContactMethod - ContactDetailPreferredSupportLanguage $env.ContactDetailPreferredSupportLanguage - ContactDetailPreferredTimeZone $env.ContactDetailPreferredTimeZone - ContactDetailPrimaryEmailAddress $env.ContactDetailPrimaryEmailAddress - Description $env.Description - ProblemClassificationId $env.ProblemClassificationId - ServiceId $env.ServiceId - Severity $env.Severity - Title $env.Title
106-
107- write-host " adding a message at subscription level"
108- if ($supportTicketSubscription.SupportPlanDisplayName -eq " Basic support" || $supportTicket.SupportPlanDisplayName -eq " Free" ){
109- write-host " cannot create, update support tickets and add communication operations for tickets with free support plan"
110- }
111- else {
112- New-AzSupportCommunication - Name $env.CommunicationName - SupportTicketName $env.Name - Body $env.Body - Sender $env.Sender - Subject $env.Subject
113- }
114- write-host " creating a support ticket request at tenant level"
115- $supportTicketTenant = New-AzSupportTicketsNoSubscription - SupportTicketName $env.Name - AdvancedDiagnosticConsent $env.AdvancedDiagnosticConsent - ContactDetailCountry $env.ContactDetailCountry - ContactDetailFirstName $env.ContactDetailFirstName - ContactDetailLastName $env.ContactDetailLastName - ContactDetailPreferredContactMethod $env.ContactDetailPreferredContactMethod - ContactDetailPreferredSupportLanguage $env.ContactDetailPreferredSupportLanguage - ContactDetailPreferredTimeZone $env.ContactDetailPreferredTimeZone - ContactDetailPrimaryEmailAddress $env.ContactDetailPrimaryEmailAddress - Description $env.Description - ProblemClassificationId $env.ProblemClassificationId - ServiceId $env.ServiceId - Severity $env.Severity - Title $env.Title
116-
117- write-host " adding a message at tenant level"
118- if ($supportTicketTenant.SupportPlanDisplayName -eq " Basic support" || $supportTicket.SupportPlanDisplayName -eq " Free" ){
119- write-host " cannot create, update support tickets and add communication operations for tickets with free support plan"
115+ if ($env.HasSubscription ){
116+ write-host " creating a support ticket request at subscription level"
117+ $supportTicketSubscription = New-AzSupportTicket - Name $env.Name - AdvancedDiagnosticConsent $env.AdvancedDiagnosticConsent - ContactDetailCountry $env.ContactDetailCountry - ContactDetailFirstName $env.ContactDetailFirstName - ContactDetailLastName $env.ContactDetailLastName - ContactDetailPreferredContactMethod $env.ContactDetailPreferredContactMethod - ContactDetailPreferredSupportLanguage $env.ContactDetailPreferredSupportLanguage - ContactDetailPreferredTimeZone $env.ContactDetailPreferredTimeZone - ContactDetailPrimaryEmailAddress $env.ContactDetailPrimaryEmailAddress - Description $env.Description - ProblemClassificationId $env.ProblemClassificationId - ServiceId $env.ServiceId - Severity $env.Severity - Title $env.Title
118+ write-host " adding a message at subscription level"
119+ # if($supportTicketSubscription.SupportPlanDisplayName -eq "Basic support" || $supportTicket.SupportPlanDisplayName -eq "Free"){
120+ # write-host "cannot create, update support tickets and add communication operations for tickets with free support plan"
121+ # }
122+ # else{
123+ New-AzSupportCommunication - Name $env.CommunicationName - SupportTicketName $env.Name - Body $env.Body - Sender $env.Sender - Subject $env.Subject
124+ # }
125+ $env.AddWithCache (" SupportPlanSubscription" , $supportTicketSubscription.SupportPlanDisplayName.ToString (), $UsePreviousConfigForRecord )
120126 }
121127 else {
122- New-AzSupportCommunicationsNoSubscription - CommunicationName $env.CommunicationName - SupportTicketName $env.Name - Body $env.Body - Sender $env.Sender - Subject $env.Subject
128+ write-host " creating a support ticket request at tenant level"
129+ $supportTicketTenant = New-AzSupportTicketsNoSubscription - SupportTicketName $env.Name - AdvancedDiagnosticConsent $env.AdvancedDiagnosticConsent - ContactDetailCountry $env.ContactDetailCountry - ContactDetailFirstName $env.ContactDetailFirstName - ContactDetailLastName $env.ContactDetailLastName - ContactDetailPreferredContactMethod $env.ContactDetailPreferredContactMethod - ContactDetailPreferredSupportLanguage $env.ContactDetailPreferredSupportLanguage - ContactDetailPreferredTimeZone $env.ContactDetailPreferredTimeZone - ContactDetailPrimaryEmailAddress $env.ContactDetailPrimaryEmailAddress - Description $env.Description - ProblemClassificationId $env.ProblemClassificationId - ServiceId $env.ServiceId - Severity $env.Severity - Title $env.Title
130+ write-host " adding a message at tenant level"
131+ # if($supportTicketTenant.SupportPlanDisplayName -eq "Basic support" || $supportTicket.SupportPlanDisplayName -eq "Free"){
132+ # write-host "cannot create, update support tickets and add communication operations for tickets with free support plan"
133+ # }
134+ # else{
135+ New-AzSupportCommunicationsNoSubscription - CommunicationName $env.CommunicationName - SupportTicketName $env.Name - Body $env.Body - Sender $env.Sender - Subject $env.Subject
136+ # }
137+ $env.AddWithCache (" SupportPlanTenant" , $supportTicketTenant.SupportPlanDisplayName.ToString (), $UsePreviousConfigForRecord )
123138 }
124139
125- $env.AddWithCache (" SupportPlanSubscription" , $supportTicketSubscription.SupportPlanDisplayName.ToString (), $UsePreviousConfigForRecord )
126- $env.AddWithCache (" SupportPlanTenant" , $supportTicketTenant.SupportPlanDisplayName.ToString (), $UsePreviousConfigForRecord )
127140
128141 # For any resources you created for test, you should add it to $env here.
129142 $envFile = ' env.json'
0 commit comments