Skip to content

huangpf PR: dev <- Azure:dev #587

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 27 commits into from
Aug 10, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
10cb82c
Minor fixes and enable tests
DeepakRajendranMsft Jul 26, 2016
73ea56f
Merge branch 'dev' of https://github.com/Azure/azure-powershell into dev
DeepakRajendranMsft Jul 30, 2016
a1deb02
Merge branch 'dev' of https://github.com/Azure/azure-powershell into dev
DeepakRajendranMsft Aug 2, 2016
67fab66
Powershell changes for get effective route and NSG
DeepakRajendranMsft Aug 2, 2016
d107e84
Update versions for release-2.0.0
cormacpayne Aug 2, 2016
acdaf47
Correct versions for preview modules (#2715)
Aug 2, 2016
8d841ea
Merge with release-2.0.0
DeepakRajendranMsft Aug 3, 2016
cadcb83
Temporarily disable test that is failing
cormacpayne Aug 3, 2016
dc3e96c
minor fixes and test
DeepakRajendranMsft Aug 3, 2016
959c65e
Added issue number to skip message.
cormacpayne Aug 3, 2016
ba14161
remove app.config
DeepakRajendranMsft Aug 3, 2016
725aee6
Merge pull request #2730 from cormacpayne/remove-test
markcowl Aug 3, 2016
1811613
Merge branch 'release-2.0.0' of https://github.com/Azure/azure-powers…
DeepakRajendranMsft Aug 3, 2016
9d28be4
LB documentation update (#2725)
anavinahar Aug 4, 2016
7563802
update OperationalInsights sdk version reference. (#2718)
haitch Aug 4, 2016
5563f75
Merge pull request #2720 from DeepakRajendranMsft/AddEffectiveRouteAn…
markcowl Aug 4, 2016
0400dc9
Update AD Graph Cmdlets (#2734)
shuagarw Aug 4, 2016
b23c52e
Add migration cmdlets (#2721)
DeepakRajendranMsft Aug 4, 2016
537ccbc
Added virtual network support for Batch cmdlets (#2724)
brnleehng Aug 4, 2016
59c544d
Update AD Cmdlets help and unskip the new cmdlets for exception. (#2739)
shuagarw Aug 5, 2016
f387f3a
Update ChangeLog.md
markcowl Aug 8, 2016
665b3aa
Update change log with breaking changes, RM, and SQL
Aug 8, 2016
0a16a59
Create migration guide for release 2.0.0
cormacpayne Aug 8, 2016
50a64a6
Merge pull request #2746 from cormacpayne/add-release-notes
markcowl Aug 9, 2016
c847f43
Merge pull request #2748 from cormacpayne/master
Aug 9, 2016
97da28b
Merge remote-tracking branch 'upstream/dev'
cormacpayne Aug 9, 2016
e97be15
Merge pull request #2751 from cormacpayne/master
Aug 9, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
39 changes: 21 additions & 18 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
##2016.08.03 version 2.0.0
* This release contains breaking changes. Please see [the migration guide](https://gist.github.com/cormacpayne/dad22c060dfd9acfda744f1405d4539c) for change details and the impact on existing scripts.
* This release contains breaking changes. Please see [the migration guide](documentation/release-notes/migration-guide.2.0.0.md) for change details and the impact on existing scripts.
* Removal of Force parameters that were marked as obsolete in the previous release
* ApiManagement
- Remove-AzureRmApiManagement
Expand Down Expand Up @@ -132,32 +132,35 @@
* Change -Tag parameter type from HashTable[] to HashTable
- New-AzureRmStorageAccount
- Set-AzureRmStorageAccount
* Normalize the ShouldProcess Confirmation, so when $ConfirmPreference is set lower than "High", user need to include the parameter: ‘-Confirm:$false’ in their PowerShell scripts to suspress ShouldProcess Conformation
- Remove-AzureRmStorageAccount
* Added ShouldProcess support
- Set-AzureStorageContainerStoredAccessPolicy
- Set-AzureStorageShareStoredAccessPolicy
- Set-AzureStorageQueueStoredAccessPolicy
- Set-AzureStorageTableStoredAccessPolicy
* Downgraded ConfirmImpact to Medium
- Remove-AzureStorageBlob
- Remove-AzureStorageContainer
- Remove-AzureStorageTable
- Remove-AzureStorageQueue
- Remove-AzureStorageShare
- Remove-AzureStorageDirectory
- Remove-AzureStorageFile
- Remove-AzureStorageContainerStoredAccessPolicy
- Remove-AzureStorageFile
- Remove-AzureStorageShare
- Remove-AzureStorageShareStoredAccessPolicy
- Remove-AzureStorageTableStoredAccessPolicy
- Remove-AzureStorageQueue
- Remove-AzureStorageQueueStoredAccessPolicy
- Set-AzureStorageContainerStoredAccessPolicy
- Set-AzureStorageShareStoredAccessPolicy
- Set-AzureStorageTableStoredAccessPolicy
- Set-AzureStorageQueueStoredAccessPolicy
- Set-AzureRmStorageAccount
* Add confirmation and -Force parameter to suspress ShouldContinue confirmation
- Remove-AzureStorageTable
- Remove-AzureStorageTableStoredAccessPolicy
* Add support for ShouldProcess and -Force parameter to supress confirmation
- Remove-AzureRmStorageAccount
- Set-AzureRmStorageAccount
* Use -Force parameter instead of -Confirm parameter to suspress ShouldContinue confirmaiton
- Remove-AzureStorageShare
* ShouldContinue confirmation needed (suspress with -Force) only when there's data in the Container/Table to delete
* Confirmation needed only when there's data in the Container/Table to delete (suppress with -Force)
- Remove-AzureStorageContainer
- Remove-AzureStorageTable
* Azure Batch
* Add virtual network support
- New-AzureBatchPool
* Change -Tag parameter type from HashTable[] to HashTable
- Set-AzureRmBatchAccount
- New-AzureRmBatchAccount
- Get-AzureRmBatchAccount
* Azure Sql
* Extended the auditing cmdlets to support management of blob auditing, both at the database and at the server level

Expand Down
321 changes: 321 additions & 0 deletions documentation/release-notes/migration-guide.2.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,321 @@
# Table of Contents
1. [Removal of Force parameters](#removal-of-force-parameters)
2. [Change of Tag parameters](#change-of-tag-parameters)
3. [Breaking changes to Storage cmdlets](#breaking-changes-to-storage-cmdlets)
4. [Breaking changes to AD cmdlets](#breaking-changes-to-ad-cmdlets)

## Removal of Force parameters

This release, we removed all Obsolete `Force` parameters from cmdlets and the corresponding warnings that the parameter would be removed in a future release.

The following cmdlets are affected by this change:

**ApiManagement**
- Remove-AzureRmApiManagement
- Remove-AzureRmApiManagementApi
- Remove-AzureRmApiManagementGroup
- Remove-AzureRmApiManagementLogger
- Remove-AzureRmApiManagementOpenIdConnectProvider
- Remove-AzureRmApiManagementOperation
- Remove-AzureRmApiManagementPolicy
- Remove-AzureRmApiManagementProduct
- Remove-AzureRmApiManagementProperty
- Remove-AzureRmApiManagementSubscription
- Remove-AzureRmApiManagementUser

**Automation**
- Remove-AzureRmAutomationCertificate
- Remove-AzureRmAutomationCredential
- Remove-AzureRmAutomationVariable
- Remove-AzureRmAutomationWebhook

**Batch**
- Remove-AzureBatchCertificate
- Remove-AzureBatchComputeNode
- Remove-AzureBatchComputeNodeUser

**DataFactories**
- Resume-AzureRmDataFactoryPipeline
- Set-AzureRmDataFactoryPipelineActivePeriod
- Suspend-AzureRmDataFactoryPipeline

**DataLakeStore**
- Remove-AzureRmDataLakeStoreItemAclEntry
- Set-AzureRmDataLakeStoreItemAcl
- Set-AzureRmDataLakeStoreItemAclEntry
- Set-AzureRmDataLakeStoreItemOwner

**OperationalInsights**
- Remove-AzureRmOperationalInsightsSavedSearch

**Profile**
- Remove-AzureRmEnvironment

**RedisCache**
- Remove-AzureRmRedisCacheDiagnostics

**Resources**
- Register-AzureRmProviderFeature
- Register-AzureRmResourceProvider
- Remove-AzureRmADServicePrincipal
- Remove-AzureRmPolicyAssignment
- Remove-AzureRmResourceGroupDeployment
- Remove-AzureRmRoleAssignment
- Stop-AzureRmResourceGroupDeployment
- Unregister-AzureRmResourceProvider

**Storage**
- Remove-AzureStorageContainerStoredAccessPolicy
- Remove-AzureStorageQueueStoredAccessPolicy
- Remove-AzureStorageShareStoredAccessPolicy
- Remove-AzureStorageTableStoredAccessPolicy

**StreamAnalytics**
- Remove-AzureRmStreamAnalyticsFunction
- Remove-AzureRmStreamAnalyticsInput
- Remove-AzureRmStreamAnalyticsJob
- Remove-AzureRmStreamAnalyticsOutput

**Tag**
- Remove-AzureRmTag

<br>

If you have a script that uses any of the above cmdlets, the breaking change can be fixed by simply removing the `Force` parameter.

```powershell
# Old
New-AzureRmResourceGroup -Name $resourceGroupName -Location $location -Force

# New
New-AzureRmResourceGroup -Name $resourceGroupName -Location $location
```

<br>

## Change of Tag parameters

This release, the `Tags` parameter name was changed to `Tag`, and the type was changed from `Hashtable[]` to `Hashtable`, changing the format of the key-value pairings.

Previously, each entry in the `Hashtable[]` represented a single key-value pairing:

```powershell
$tags = @{ Name = "test1"; Value = "testval1" }, @{ Name = "test2", Value = "testval2" }
$tags[0].Name # Key for the first entry, "test1"
$tags[0].Value # Value for the first entry, "testval1"
$tags[1].Name # Key for the second entry, "test2"
$tags[1].Value # Value for the second entry, "testval2"
```

Now, `Name` and `Value` are no longer necessary, allowing for key-value pairings to be created by assigning `Key = "Value"` in the `Hashtable`:

```powershell
$tag = @{ test1 = "testval1"; test2 = "testval2" }
$tag["test1"] # Gets the value associated with the key "test1"
$tag["test2"] # Gets the value associated with the key "test2"
```

The following cmdlets are affected by this change:

**Batch**
- Get-AzureRmBatchAccount
- New-AzureRmBatchAccount
- Set-AzureRmBatchAccount

**Compute**
- New-AzureRmVM
- Update-AzureRmVM

**DataLakeAnalytics**
- New-AzureRmDataLakeAnalyticsAccount
- Set-AzureRmDataLakeAnalyticsAccount

**DataLakeStore**
- New-AzureRmDataLakeStoreAccount
- Set-AzureRmDataLakeStoreAccount

**Dns**
- New-AzureRmDnsZone
- Set-AzureRmDnsZone

**KeyVault**
- Get-AzureRmKeyVault
- New-AzureRmKeyVault

**Network**
- New-AzureRmApplicationGateway
- New-AzureRmExpressRouteCircuit
- New-AzureRmLoadBalancer
- New-AzureRmLocalNetworkGateway
- New-AzureRmNetworkInterface
- New-AzureRmNetworkSecurityGroup
- New-AzureRmPublicIpAddress
- New-AzureRmRouteTable
- New-AzureRmVirtualNetwork
- New-AzureRmVirtualNetworkGateway
- New-AzureRmVirtualNetworkGatewayConnection
- New-AzureRmVirtualNetworkPeering

**Resources**
- Find-AzureRmResource
- Find-AzureRmResourceGroup
- New-AzureRmResource
- New-AzureRmResourceGroup
- Set-AzureRmResource
- Set-AzureRmResourceGroup

**SQL**
- New-AzureRmSqlDatabase
- New-AzureRmSqlDatabaseCopy
- New-AzureRmSqlDatabaseSecondary
- New-AzureRmSqlElasticPool
- New-AzureRmSqlServer
- Set-AzureRmSqlDatabase
- Set-AzureRmSqlElasticPool
- Set-AzureRmSqlServer

**Storage**
- New-AzureRmStorageAccount
- Set-AzureRmStorageAccount

**TrafficManager**
- New-AzureRmTrafficManagerProfile

<br>

If you have a script that uses any of the above cmdlets, the breaking change can be fixed by changing the `Tags` parameter to `Tag`, as well as changing the `Tag` to the new format.

```powershell
# Old
New-AzureRmResourceGroup -Name $resourceGroupName -Location -location -Tags @{ Name = "testtag"; Value = "testval" }

# New
New-AzureRmResourceGroup -Name $resourceGroupName -Location -location -Tag @{ testtag = "testval" }
```

<br>

## Breaking changes to Storage cmdlets

The following cmdlets were affected this release:

**Get-AzureRmStorageAccountKey**
- The cmdlet now returns a list of keys, rather than an object with properties for each key

```powershell
# Old
$key = (Get-AzureRmStorageAccountKey -ResourceGroupName $resourceGroupName -Name $accountName).Key1

# New
$key = (Get-AzureRmStorageAccountKey -ResourceGroupName $resourceGroupName -Name $accountName)[0].Value
```

**New-AzureRmStorageAccountKey**
- `StorageAccountRegenerateKeyResponse` field in output of this cmdlet is renamed to `StorageAccountListKeysResults`, which is now a list of keys rather than an object with properties for each key

```powershell
# Old
$key = (New-AzureRmStorageAccountKey -ResourceGroupName $resourceGroupName -Name $accountName).StorageAccountKeys.Key1

# New
$key = (New-AzureRmStorageAccountKey -ResourceGroupName $resourceGroupName -Name $accountName).Keys[0].Value
```

**New/Get/Set-AzureRmStorageAccount**
- `AccountType` field in output of this cmdlet is renamed to `Sku.Name`
- Output type for PrimaryEndpoints/Secondary endpoints blob/table/queue/file changed from `Uri` to `String`

```powershell
# Old
$accountType = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $accountName).AccountType

# New
$accountType = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $accountName).Sku.Name
```

```powershell
# Old
$blobEndpoint = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $accountName).PrimaryEndpoints.Blob.ToString()
$blobEndpoint = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $accountName).PrimaryEndpoints.Blob.AbsolutePath

# New
$blobEndpoint = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $accountName).PrimaryEndpoints.Blob.ToString()
$blobEndpoint = (Get-AzureRmStorageAccount -ResourceGroupName $resourceGroupName -Name $accountName).PrimaryEndpoints.Blob
```

<br>

## Breaking changes to AD cmdlets

The following cmdlets were affected this release:

**Get-AzureRMADServicePrincipal**
- `ServicePrincipalName` field in output of this cmdlet is renamed to `ServicePrincipalNames` and is now a collection. It now displays `ApplicationId` also as one of the SPN, along with the identifierUri.

```powershell
# Old
$servicePrincipals = Get-AzureRmADServicePrincipal -SearchString $displayName
$spn = $servicePrincipals[0].ServicePrincipalName

# New
$servicePrincipals = Get-AzureRmADServicePrincipal -SearchString $displayName
$spn = $servicePrincipals[0].ServicePrincipalNames[0]
```

**Get-AzureRmADApplication**
- Parameter `ApplicationObjectId` is renamed to `ObjectId`.
- In output of this cmdlet, `ApplicationObjectId` is renamed to `ObjectId`.

```powershell
# Old
$app = Get-AzureRmADApplication -ApplicationObjectId $applicationObjectId
$objectId = $app.ApplicationObjectId

# New
$app = Get-AzureRmADApplication -ObjectId $objectId
$objectId = $app.ObjectId
```

**Remove-AzureRmADApplication**
- Parameter `ApplicationObjectId` is renamed to `ObjectId`.

```powershell
# Old
$app = Remove-AzureRmADApplication -ApplicationObjectId $applicationObjectId -Force

# New
$app = Remove-AzureRmADApplication -ObjectId $objectId -Force
```

**New-AzureRmADApplication**
- In output of this cmdlet, `ApplicationObjectId` is renamed to `ObjectId`.
- `KeyValue`, `KeyUsage`, `KeyType` parameters are removed.

```powershell
# Old
$app = New-AzureRmADApplication -DisplayName $displayName -HomePage $homePage -IdentifierUris $identifierUris -KeyValue $kv -KeyType $kt -KeyUsage $ku
$id = $app.ApplicationObjectId

# New
$app = New-AzureRmADApplication -DisplayName $displayName -HomePage $homePage -IdentifierUris $identifierUris
$id = $app.ObjectId
New-AzureRmADAppCredential -ObjectId $id -Password $kv
```

**Get-AzureRmADGroup**
- `Mail` field is removed from the output.

**Get-AzureRmADUser**
- `Mail` field is removed from the output.

**New-AzureRmADServicePrincipal**
- Removed `DisableAccount` parameter.

```powershell
# Old
$servicePrincipal = New-AzureRmADServicePrincipal -DisplayName $displayName -Password $password -DisableAccount true

# New
$servicePrincipal = New-AzureRmADServicePrincipal -DisplayName $displayName -Password $password
Remove-AzureRmADServicePrincipal -ObjectId $servicePrincipal.ObjectId
```
4 changes: 2 additions & 2 deletions setup/azurecmd.wxs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">

<?define productName="Microsoft Azure PowerShell - July 2016" ?>
<?define productName="Microsoft Azure PowerShell - August 2016" ?>
<?define sourceDir="$(var.SolutionDir)..\src\Package\$(var.Configuration)" ?>
<?define caSourceDir="$(var.SolutionDir)setup\bin\$(var.Configuration)" ?>

<?define version="1.6.0" ?>
<?define version="2.0.0" ?>

<Product Id="*"
Name="$(var.productName)"
Expand Down
Loading