-
Notifications
You must be signed in to change notification settings - Fork 3
Changelog
- Add-OSPortAllowedAddressPair
- Disable-OSImage
- Disconnect-OSAccount
- Enable-OSImage
- Get-OSAggregate
- Get-OSAvailabilityZone
- Get-OSEndpoint
- Get-OSHypervisorStatistic
- Get-OSHypervisorUptime
- Get-OSLimit
- Get-OSPortAllowedAddressPair
- Get-OSRegion
- Get-OSSecurityGroupRule
- Get-OSServerAction
- Get-OSServerDiagnostic
- Get-OSServerUsageAuditLog
- Get-OSService
- Get-OSSubnet
- New-OSEndpoint
- New-OSRegion
- New-OSVolume
- New-OSVolumeBackup
- New-OSVolumeSnapshot
- Remove-OSEndpoint
- Remove-OSImage
- Remove-OSNetwork
- Remove-OSPortAllowedAddressPair
- Remove-OSRegion
- Remove-OSSecurityGroup
- Remove-OSSecurityGroupRule
- Remove-OSSubnet
- Add-OSGroupMember
- Add-OSServerInterface
- Add-OSServerVolumeAttachment
- Connect-OSAccount
- Get-OSAccount
- Get-OSDomain
- Get-OSFlavor
- Get-OSGroup
- Get-OSGroupMember
- Get-OSHypervisor
- Get-OSImage
- Get-OSNetwork
- Get-OSObjectIdentifierer (internal)
- Get-OSPort
- Get-OSProject
- Get-OSRole
- Get-OSSecurityGroup
- Get-OSServer
- Get-OSServerInterface
- Get-OSServerMetadata
- Get-OSServerVolumeAttachment
- Get-OSUser
- Get-OSVolume
- Get-OSVolumeBackup
- Get-OSVolumeMetadata
- Get-OSVolumeSnapshot
- Invoke-OSApiRequest (internal)
- New-OSDomain
- New-OSFlavor
- New-OSGroup
- New-OSProject
- New-OSRole
- New-OSServer
- New-OSServerMetadata
- New-OSUser
- New-OSVolumeMetadata
- Remove-OSDomain
- Remove-OSFlavor
- Remove-OSGroup
- Remove-OSGroupMember
- Remove-OSPort
- Remove-OSProject
- Remove-OSRole
- Remove-OSServer
- Remove-OSServerInterface
- Remove-OSServerMetadata
- Remove-OSServerVolumeAttachment
- Remove-OSUser
- Remove-OSVolume
- Remove-OSVolumeBackup
- Remove-OSVolumeMetadata
- Remove-OSVolumeSnapshot
- Resize-OSVolume
- Restart-OSServer
- Set-OSPort
- Set-OSServer
- Set-OSServerMetadata
- Set-OSVolumeMetadata
- Start-OSServer
- Stop-OSServer
- Write-OSLogging (internal)
Function Get-StringHash([String] $String,$HashName = "MD5")
{
$StringBuilder = New-Object System.Text.StringBuilder
[System.Security.Cryptography.HashAlgorithm]::Create($HashName).ComputeHash([System.Text.Encoding]::UTF8.GetBytes($String))|%{
[Void]$StringBuilder.Append($_.ToString("x2"))
}
$StringBuilder.ToString()
}
$Version1Path = 'C:\Users\PC\Desktop\OpenStackPowerShellModule-1.0'
$Version2Path = 'C:\Users\PC\Desktop\OpenStackPowerShellModule-1.1'
#region Version 1
cd $Version1Path
Remove-Module OpenStack
Import-Module .\OpenStack.psm1 -Force
$CommandsVersion1 = Get-Command -Module OpenStack | Select Name, @{Name='Hash'; Expression={Get-StringHash -String $_.Definition}}
#endregion
#region Version 1
cd $Version2Path
Remove-Module OpenStack
Import-Module .\OpenStack.psm1 -Force
$CommandsVersion2 = Get-Command -Module OpenStack | Select Name, @{Name='Hash'; Expression={Get-StringHash -String $_.Definition}}
#endregion
$CompareItems = Compare-Object -ReferenceObject $CommandsVersion1.Name -DifferenceObject $CommandsVersion2.Name -IncludeEqual
$Report = @()
foreach($CompareItem in $CompareItems)
{
$Object = [PSCustomObject]@{
Type = 'Unknown'
Name = $CompareItem.InputObject
}
`if($CompareItem.SideIndicator -eq '=>')`
`{`
`$Object.Type = 'Add'`
`}`
`elseif($CompareItem.SideIndicator -eq '<=')`
`{`
`$Object.Type = 'Remove'`
`}`
`elseif($CompareItem.SideIndicator -eq '==')`
`{`
`$CommandVersion1 = $CommandsVersion1 | ?{$_.Name -eq $CompareItem.InputObject} `
`$CommandVersion2 = $CommandsVersion2 | ?{$_.Name -eq $CompareItem.InputObject} `
`if($CommandVersion1.Hash -ne $CommandVersion2.Hash)`
`{`
`$Object.Type = 'Change'`
`}`
`else`
`{`
`$Object.Type = 'NoChange'`
`}`
`}`
`$Report += $Object`
}
$Report | ?{$_.Type -ne 'NoChange'} | sort Name | ft -AutoSize