Skip to content

Changelog

Augustin Ziegler edited this page Apr 12, 2019 · 14 revisions

Version 1.1

Commands

Added

  • 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

Version 1.0

Commands

Added

  • 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)

Get-ChangeLogReport

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

Clone this wiki locally