Skip to content

Commit 20a5932

Browse files
authored
Merge branch 'release-2020-03-10' into myPowershellChanges
2 parents e4951e1 + 9813b78 commit 20a5932

File tree

472 files changed

+130231
-126248
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

472 files changed

+130231
-126248
lines changed

ChangeLog.md

Lines changed: 84 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,75 @@
1+
## 3.5.0 - February 2020
2+
### Highlights since the last major release
3+
* Updated client side telemetry.
4+
* Az.IotHub added cmdlets to support to manage devices.
5+
* Az.SqlVirtualMachine added cmdlets for Availability Group Listener.
6+
7+
#### Az.Resource
8+
* Fixed bug preventing correct tenant-level resource id generation.
9+
* Fixed typo.
10+
11+
#### Az.Accounts
12+
* Added SubscriptionId, TenantId, and execution time into data of client side telemetry
13+
14+
#### Az.Automation
15+
* Fixed typo in Example 1 in reference documentation for 'New-AzAutomationSoftwareUpdateConfiguration'
16+
17+
#### Az.CognitiveServices
18+
* Updated SDK to 7.0
19+
* Improved error message when server responses empty body
20+
21+
#### Az.Compute
22+
* Allowed empty value for ProximityPlacementGroupId during update
23+
24+
#### Az.FrontDoor
25+
* Added cmdlet to get managed rule definitions that can be used in WAF
26+
27+
#### Az.IotHub
28+
* Added support to manage devices in an Iot Hub. New Cmdlets are:
29+
- 'Add-AzIotHubDevice'
30+
- 'Get-AzIotHubDevice'
31+
- 'Remove-AzIotHubDevice'
32+
- 'Set-AzIotHubDevice'
33+
34+
#### Az.KeyVault
35+
* Fixed duplicated text for Add-AzKeyVaultKey.md
36+
37+
#### Az.Monitor
38+
* Fixed description of the Get-AzLog cmdlet.
39+
* A new parameter called ActionGroupId was added to 'New-AzMetricAlertRuleV2' command.
40+
- The user can provide either ActionGroupId(string) or ActionGorup(ActivityLogAlertActionGroup).
41+
42+
#### Az.Network
43+
* Added one extra parameter note for parameter '-EnableProxyProtocol' for 'New-AzPrivateLinkService' cmdlet.
44+
* Fixed FilterData example in Start-AzVirtualNetworkGatewayConnectionPacketCapture.md and Start-AzVirtualnetworkGatewayPacketCapture.md.
45+
* Added Packet Capture example for capture all inner and outer packets in Start-AzVirtualNetworkGatewayConnectionPacketCapture.md and Start-AzVirtualnetworkGatewayPacketCapture.md.
46+
* Supported Azure Firewall Policy on VNet Firewalls
47+
- No new cmdlets are added. Relaxing the restriction for firewall policy on VNet firewalls
48+
49+
#### Az.RecoveryServices
50+
* Added Support for Restore-as-files for SQL Databases.
51+
52+
#### Az.Resources
53+
* Refactored template deployment cmdlets
54+
- Added new cmdlets for managing deployments at management group: *-AzManagementGroupDeployment
55+
- Added new cmdlets for managing deployments at tenant scope: *-AzTenantDeployment
56+
- Refactored *-AzDeployment cmdlets to work specifically at subscription scope
57+
- Created aliases *-AzSubscriptionDeployment for *-AzDeployment cmdlets
58+
* Fixed 'Update-AzADApplication' when parameter 'AvailableToOtherTenants' is not set
59+
* Removed ApplicationObjectWithoutCredentialParameterSet to avoid AmbiguousParameterSetException.
60+
* Regenerated help files
61+
62+
#### Az.Sql
63+
* Added support for cross subscription point in time restore on Managed Instances.
64+
* Added support for changing existing Sql Managed Instance hardware generation
65+
* Fixed 'Update-AzSqlServerVulnerabilityAssessmentSetting' help examples: parameter/property output - EmailAdmins
66+
67+
#### Az.SqlVirtualMachine
68+
* Added cmdlets for Availability Group Listener
69+
70+
#### Az.StorageSync
71+
* Updated supported character sets in 'Invoke-AzStorageSyncCompatibilityCheck'.
72+
173
## 3.4.0 - February 2020
274

375
#### Az.CosmosDB
@@ -6,10 +78,6 @@
678
* Added parameters ConflictResolutionPolicyMode, ConflictResolutionPolicyPath and ConflictResolutionPolicyPath in Set-AzCosmosDBSqlContainer.
779
* Added new cmdlets for Sql API : New-CosmosDBSqlSpatialSpec, New-CosmosDBSqlCompositePath, New-CosmosDBSqlIncludedPathIndex, New-CosmosDBSqlIncludedPath
880

9-
### Highlights since the last major release
10-
* Az.CosmosDB initial version 0.1.0 released
11-
* Az.Network ConnectionMonitor V2 support added
12-
1381
#### Az.Accounts
1482
* Disable context auto saving when AzureRmContext.json not available
1583
* Update the reference to Azure Powershell Common to 1.3.5-preview
@@ -120,7 +188,7 @@ Fix New-AzSqlDatabaseSecondary cmdlet to check for PartnerDatabaseName existence
120188
#### Az.DataFactory
121189
* Add AutoUpdateETA, LatestVersion, PushedVersion, TaskQueueId and VersionStatus properties for Get-AzDataFactoryV2IntegrationRuntime cmd
122190
* Update ADF .Net SDK version to 4.6.0
123-
* Add parameter 'PublicIPs' for 'Set-AzureRmDataFactoryV2IntegrationRuntime' cmd
191+
* Add parameter 'PublicIPs' for 'Set-AzDataFactoryV2IntegrationRuntime' cmd
124192
to enable create Azure-SSIS IR with static public IP addresses.
125193

126194
#### Az.DevTestLabs
@@ -164,8 +232,8 @@ to enable create Azure-SSIS IR with static public IP addresses.
164232
#### Az.Storage
165233
* Add breaking change warning message for DefaultAction Value change in a future release
166234
- Update-AzStorageAccountNetworkRuleSet
167-
* Support Get last sync time of Storage account by run get-AzureRMStorageAccount with parameter -IncludeGeoReplicationStats
168-
- Get-AzureRMStorageAccount
235+
* Support Get last sync time of Storage account by run get-AzStorageAccount with parameter -IncludeGeoReplicationStats
236+
- Get-AzStorageAccount
169237

170238
## 3.2.0 - December 2019
171239

@@ -268,7 +336,7 @@ to enable create Azure-SSIS IR with static public IP addresses.
268336

269337
#### Az.DataFactory
270338
* Update ADF .Net SDK version to 4.4.0
271-
* Add parameter 'ExpressCustomSetup' for 'Set-AzureRmDataFactoryV2IntegrationRuntime' cmd to enable setup configurations and 3rd party components without custom setup script.
339+
* Add parameter 'ExpressCustomSetup' for 'Set-AzDataFactoryV2IntegrationRuntime' cmd to enable setup configurations and 3rd party components without custom setup script.
272340

273341
#### Az.DataLakeStore
274342
* Update documentation of Get-AzDataLakeStoreDeletedItem and Restore-AzDataLakeStoreDeletedItem
@@ -478,13 +546,13 @@ to enable create Azure-SSIS IR with static public IP addresses.
478546
- Update-AzVirtualWan : added parameter VirtualWANType
479547
* Add support for EnableInternetSecurity property for HubVnetConnection, VpnConnection and ExpressRouteConnection
480548
- New cmdlets added:
481-
- Update-AzureRmVirtualHubVnetConnection
549+
- Update-AzVirtualHubVnetConnection
482550
- Cmdlets updated with optional parameters:
483-
- New-AzureRmVirtualHubVnetConnection : added parameter EnableInternetSecurity
484-
- New-AzureRmVpnConnection : added parameter EnableInternetSecurity
485-
- Update-AzureRmVpnConnection : added parameter EnableInternetSecurity
486-
- New-AzureRmExpressRouteConnection : added parameter EnableInternetSecurity
487-
- Set-AzureRmExpressRouteConnection : added parameter EnableInternetSecurity
551+
- New-AzVirtualHubVnetConnection : added parameter EnableInternetSecurity
552+
- New-AzVpnConnection : added parameter EnableInternetSecurity
553+
- Update-AzVpnConnection : added parameter EnableInternetSecurity
554+
- New-AzExpressRouteConnection : added parameter EnableInternetSecurity
555+
- Set-AzExpressRouteConnection : added parameter EnableInternetSecurity
488556
* Add support for Configuring TopLevel WebApplicationFirewall Policy
489557
- New cmdlets added:
490558
- New-AzApplicationGatewayFirewallPolicySetting
@@ -591,8 +659,8 @@ to enable create Azure-SSIS IR with static public IP addresses.
591659
- New cmdlets added:
592660
- New-AzureRmTrafficSelectorPolicy
593661
- Cmdlets updated with optional parameter -TrafficSelectorPolicies
594-
-New-AzureRmVirtualNetworkGatewayConnection
595-
-Set-AzureRmVirtualNetworkGatewayConnection
662+
-New-AzVirtualNetworkGatewayConnection
663+
-Set-AzVirtualNetworkGatewayConnection
596664
* Add support for ESP and AH protocols in network security rule configurations
597665
- Updated cmdlets:
598666
- Add-AzNetworkSecurityRuleConfig

VirtualMachineCustomScriptExtensionManagedDisk.json

Lines changed: 0 additions & 3814 deletions
This file was deleted.
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// ----------------------------------------------------------------------------------
2+
//
3+
// Copyright Microsoft Corporation
4+
// Licensed under the Apache License, Version 2.0 (the "License");
5+
// you may not use this file except in compliance with the License.
6+
// You may obtain a copy of the License at
7+
// http://www.apache.org/licenses/LICENSE-2.0
8+
// Unless required by applicable law or agreed to in writing, software
9+
// distributed under the License is distributed on an "AS IS" BASIS,
10+
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
// See the License for the specific language governing permissions and
12+
// limitations under the License.
13+
// ----------------------------------------------------------------------------------
14+
15+
using Microsoft.WindowsAzure.Commands.ScenarioTest;
16+
using Xunit;
17+
using Xunit.Abstractions;
18+
19+
namespace Microsoft.Azure.Commands.Profile.Test
20+
{
21+
public class ErrorResolutionScenarioTests : AccountsTestRunner
22+
{
23+
public ErrorResolutionScenarioTests(ITestOutputHelper output)
24+
: base(output)
25+
{
26+
}
27+
28+
[Fact]
29+
[Trait(Category.AcceptanceType, Category.CheckIn)]
30+
public void WriteInformationInResolveError()
31+
{
32+
TestRunner.RunTestScript("Test-WriteInformationInResolveError");
33+
}
34+
}
35+
}
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# -----------------------------------------------------------------------------------
2+
#
3+
# Copyright Microsoft Corporation
4+
# Licensed under the Apache License, Version 2.0 (the "License");
5+
# you may not use this file except in compliance with the License.
6+
# You may obtain a copy of the License at
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
# Unless required by applicable law or agreed to in writing, software
9+
# distributed under the License is distributed on an "AS IS" BASIS,
10+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11+
# See the License for the specific language governing permissions and
12+
# limitations under the License.
13+
# ----------------------------------------------------------------------------------
14+
15+
<#
16+
.SYNOPSIS
17+
Tests cmdlets surrounding default resource group
18+
#>
19+
20+
function Test-WriteInformationInResolveError
21+
{
22+
Assert-Throws { Connect-AzAccount -Wrong }
23+
$err = Resolve-AzError -Last
24+
Assert-AreEqual 1 $err.length
25+
Assert-AreEqual "Microsoft.Azure.Commands.Profile.Errors.AzureExceptionRecord" $err[0].GetType().FullName
26+
}

src/Accounts/Accounts.Test/ErrorResolutionTests.cs

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ public void HandlesExceptionError()
6666
var response = new HttpResponseMessage(HttpStatusCode.BadRequest);
6767
var hyakException = new TestHyakException("exception message", CloudHttpRequestErrorInfo.Create(request), CloudHttpResponseErrorInfo.Create(response))
6868
{
69-
Error = new Hyak.Common.CloudError { Code="HyakCode", Message="HyakError"}
69+
Error = new Hyak.Common.CloudError { Code = "HyakCode", Message = "HyakError" }
7070
};
7171

7272
var autorestException = new Microsoft.Rest.Azure.CloudException("exception message")
@@ -79,16 +79,15 @@ public void HandlesExceptionError()
7979

8080
var cmdlet = new ResolveError
8181
{
82-
Error = new []
82+
Error = new[]
8383
{
8484
new ErrorRecord(new Exception("exception message"), "errorCode", ErrorCategory.AuthenticationError, this),
8585
new ErrorRecord(hyakException, "errorCode", ErrorCategory.ConnectionError, this),
8686
new ErrorRecord(autorestException , "errorCode", ErrorCategory.InvalidOperation, this),
8787
},
8888
CommandRuntime = runtime
8989
};
90-
91-
cmdlet.ExecuteCmdlet();
90+
Assert.Throws<NotImplementedException>(() => cmdlet.ExecuteCmdlet());
9291
Assert.NotNull(runtime.OutputPipeline);
9392
Assert.Equal(3, runtime.OutputPipeline.Count);
9493
var errorResult = runtime.OutputPipeline[0] as AzureExceptionRecord;
@@ -130,9 +129,9 @@ public void HandlesNullValuesInArmExceptions()
130129
{
131130
var runtime = new MockCommandRuntime();
132131
var hyakException = new TestHyakException(null, null, null);
133-
132+
134133
var autorestException = new Microsoft.Rest.Azure.CloudException();
135-
134+
136135
var cmdlet = new ResolveError
137136
{
138137
Error = new[]
@@ -143,8 +142,8 @@ public void HandlesNullValuesInArmExceptions()
143142
},
144143
CommandRuntime = runtime
145144
};
146-
147-
cmdlet.ExecuteCmdlet();
145+
146+
Assert.Throws<NotImplementedException>(() => cmdlet.ExecuteCmdlet());
148147
Assert.NotNull(runtime.OutputPipeline);
149148
Assert.Equal(3, runtime.OutputPipeline.Count);
150149
var errorResult = runtime.OutputPipeline[0] as AzureExceptionRecord;
@@ -173,7 +172,7 @@ public void LastParameterFindsLastError()
173172
var cmdlet = new ResolveError { CommandRuntime = mock };
174173
var message = "RuntimeErrorMessage";
175174
var exception = new Exception(message);
176-
cmdlet.ExecuteCmdletWithExceptionInPipeline<AzureErrorRecord>("Resolve-AzureRmError", exception, new KeyValuePair<string, object>("Last", null ) );
175+
cmdlet.ExecuteCmdletWithExceptionInPipeline<AzureErrorRecord>("Resolve-AzureRmError", exception, new KeyValuePair<string, object>("Last", null));
177176
Assert.NotNull(mock.ErrorStream);
178177
Assert.Single(mock.ErrorStream);
179178
Assert.NotNull(mock.OutputPipeline);
@@ -183,8 +182,6 @@ public void LastParameterFindsLastError()
183182
Assert.NotNull(record.Exception);
184183
Assert.Equal(typeof(Exception), record.Exception.GetType());
185184
Assert.Equal(message, record.Message);
186-
187-
188185
}
189186
}
190187
}

src/Accounts/Accounts.Test/SendFeedbackTests.cs

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -58,35 +58,5 @@ public void SendFeedbackFailsInNonInteractive()
5858
cmdlet.InvokeBeginProcessing();
5959
});
6060
}
61-
62-
[Fact]
63-
[Trait(Category.AcceptanceType, Category.CheckIn)]
64-
public void CanSerializeSimpleFeedbackPayloadIntoProperForm()
65-
{
66-
var payload = new PSAzureFeedback
67-
{
68-
ModuleName = "Module",
69-
ModuleVersion = "1.0.0",
70-
SubscriptionId = Guid.NewGuid().ToString(),
71-
TenantId = Guid.NewGuid().ToString(),
72-
Environment = "AzureCloud",
73-
Recommendation = 10,
74-
PositiveComments = "Positive",
75-
NegativeComments = "Negative",
76-
77-
};
78-
79-
var serializedPayload = MetricHelper.SerializeCustomEventPayload(payload);
80-
81-
Assert.Equal(payload.ModuleName, serializedPayload["moduleName"]);
82-
Assert.Equal(payload.ModuleVersion, serializedPayload["moduleVersion"]);
83-
Assert.Equal(payload.SubscriptionId.ToString(), serializedPayload["subscriptionId"]);
84-
Assert.Equal(payload.TenantId.ToString(), serializedPayload["tenantId"]);
85-
Assert.Equal(payload.Environment, serializedPayload["environment"]);
86-
Assert.Equal(payload.Recommendation.ToString(), serializedPayload["recommendation"]);
87-
Assert.Equal(payload.PositiveComments, serializedPayload["positiveComments"]);
88-
Assert.Equal(payload.NegativeComments, serializedPayload["negativeComments"]);
89-
Assert.Equal(payload.Email, serializedPayload["email"]);
90-
}
9161
}
9262
}

0 commit comments

Comments
 (0)