diff --git a/Private/Get-GitHubVersion.ps1 b/Private/Get-GitHubVersion.ps1 new file mode 100644 index 0000000..f3025fe --- /dev/null +++ b/Private/Get-GitHubVersion.ps1 @@ -0,0 +1,24 @@ +function Get-GitHubVersion { + [cmdletBinding()] + param( + [Parameter(Mandatory)][string] $Cmdlet, + [Parameter(Mandatory)][string] $RepositoryOwner, + [Parameter(Mandatory)][string] $RepositoryName + ) + $App = Get-Command -Name $Cmdlet -ErrorAction SilentlyContinue + if ($App) { + [Array] $GitHubReleases = (Get-GitHubLatestRelease -Url "https://api.github.com/repos/$RepositoryOwner/$RepositoryName/releases" -Verbose:$false) + $LatestVersion = $GitHubReleases[0] + if (-not $LatestVersion.Errors) { + if ($App.Version -eq $LatestVersion.Version) { + "Current/Latest: $($LatestVersion.Version) at $($LatestVersion.PublishDate)" + } elseif ($App.Version -lt $LatestVersion.Version) { + "Current: $($App.Version), Published: $($LatestVersion.Version) at $($LatestVersion.PublishDate). Update?" + } elseif ($App.Version -gt $LatestVersion.Version) { + "Current: $($App.Version), Published: $($LatestVersion.Version) at $($LatestVersion.PublishDate). Lucky you!" + } + } else { + "Current: $($App.Version)" + } + } +} \ No newline at end of file diff --git a/Public/Invoke-GPOZaurr.ps1 b/Public/Invoke-GPOZaurr.ps1 index a4a1c50..399f4be 100644 --- a/Public/Invoke-GPOZaurr.ps1 +++ b/Public/Invoke-GPOZaurr.ps1 @@ -10,23 +10,7 @@ Reset-GPOZaurrStatus # This makes sure types are at it's proper status $Script:Reporting = [ordered] @{} - # Provide version check for easy use - $GPOZaurrVersion = Get-Command -Name 'Invoke-GPOZaurr' -ErrorAction SilentlyContinue - - [Array] $GitHubReleases = (Get-GitHubLatestRelease -Url "https://api.github.com/repos/evotecit/GpoZaurr/releases" -Verbose:$false) - - $LatestVersion = $GitHubReleases[0] - if (-not $LatestVersion.Errors) { - if ($GPOZaurrVersion.Version -eq $LatestVersion.Version) { - $Script:Reporting['Version'] = "Current/Latest: $($LatestVersion.Version) at $($LatestVersion.PublishDate)" - } elseif ($GPOZaurrVersion.Version -lt $LatestVersion.Version) { - $Script:Reporting['Version'] = "Current: $($GPOZaurrVersion.Version), Published: $($LatestVersion.Version) at $($LatestVersion.PublishDate). Update?" - } elseif ($GPOZaurrVersion.Version -gt $LatestVersion.Version) { - $Script:Reporting['Version'] = "Current: $($GPOZaurrVersion.Version), Published: $($LatestVersion.Version) at $($LatestVersion.PublishDate). Lucky you!" - } - } else { - $Script:Reporting['Version'] = "GPOZaurr Current: $($GPOZaurrVersion.Version)" - } + $Script:Reporting['Version'] = Get-GitHubVersion -Cmdlet 'Invoke-GPOZaurr' -RepositoryOwner 'evotecit' -RepositoryName 'GPOZaurr' Write-Color '[i]', "[GPOZaurr] ", 'Version', ' [Informative] ', $Script:Reporting['Version'] -Color Yellow, DarkGray, Yellow, DarkGray, Magenta $Supported = [System.Collections.Generic.List[string]]::new()