Files
runner-images/images/linux/scripts/SoftwareReport/SoftwareReport.Tools.psm1
T

294 lines
8.7 KiB
PowerShell
Raw Normal View History

function Get-AnsibleVersion {
$ansibleVersion = (ansible --version)[0] -replace "[^\d.]"
return $ansibleVersion
}
function Get-AptFastVersion {
$versionFileContent = Get-Content (which apt-fast) -Raw
$match = [Regex]::Match($versionFileContent, '# apt-fast v(.+)\n')
return $match.Groups[1].Value
}
2021-02-24 18:21:51 +03:00
function Get-AzCopyVersion {
$azcopyVersion = azcopy --version | Take-OutputPart -Part 2
return "$azcopyVersion - available by ``azcopy`` and ``azcopy10`` aliases"
}
function Get-BazelVersion {
2020-10-05 11:19:24 +03:00
$bazelVersion = bazel --version | Select-String "bazel" | Take-OutputPart -Part 1
return $bazelVersion
}
function Get-BazeliskVersion {
2020-10-07 18:26:40 +03:00
$result = Get-CommandResult "bazelisk version" -Multiline
$bazeliskVersion = $result.Output | Select-String "Bazelisk version:" | Take-OutputPart -Part 2 | Take-OutputPart -Part 0 -Delimiter "v"
return $bazeliskVersion
}
2021-06-24 03:13:00 -05:00
function Get-BicepVersion {
(bicep --version | Out-String) -match "bicep cli version (?<version>\d+\.\d+\.\d+)" | Out-Null
return $Matches.Version
2021-06-24 03:13:00 -05:00
}
function Get-CodeQLBundleVersions {
2020-10-01 12:53:28 +03:00
$CodeQLVersionsWildcard = Join-Path $Env:AGENT_TOOLSDIRECTORY -ChildPath "CodeQL" | Join-Path -ChildPath "*"
$CodeQLVersionPaths = Get-ChildItem $CodeQLVersionsWildcard
$CodeQlVersions=@()
foreach ($CodeQLVersionPath in $CodeQLVersionPaths) {
$FullCodeQLVersionPath = $CodeQLVersionPath | Select-Object -Expand FullName
$CodeQLPath = Join-Path $FullCodeQLVersionPath -ChildPath "x64" | Join-Path -ChildPath "codeql" | Join-Path -ChildPath "codeql"
$CodeQLVersion = & $CodeQLPath version --quiet
$CodeQLVersions += $CodeQLVersion
}
return $CodeQLVersions
}
function Get-PodManVersion {
2020-09-14 10:09:05 +03:00
$podmanVersion = podman --version | Take-OutputPart -Part 2
return $podmanVersion
}
function Get-BuildahVersion {
2020-09-14 10:09:05 +03:00
$buildahVersion = buildah --version | Take-OutputPart -Part 2
return $buildahVersion
}
function Get-SkopeoVersion {
2020-09-14 10:09:05 +03:00
$skopeoVersion = skopeo --version | Take-OutputPart -Part 2
return $skopeoVersion
}
function Get-CMakeVersion {
2020-09-14 10:09:05 +03:00
$cmakeVersion = cmake --version | Select-Object -First 1 | Take-OutputPart -Part 2
return $cmakeVersion
}
2021-10-01 12:33:34 +03:00
function Get-DockerComposeV1Version {
2020-09-14 10:09:05 +03:00
$composeVersion = docker-compose -v | Take-OutputPart -Part 2 | Take-OutputPart -Part 0 -Delimiter ","
return $composeVersion
2021-10-01 12:33:34 +03:00
}
function Get-DockerComposeV2Version {
$composeVersion = docker compose version | Take-OutputPart -Part 3
return $composeVersion
}
2021-02-09 22:50:11 +03:00
function Get-DockerMobyClientVersion {
$dockerClientVersion = sudo docker version --format '{{.Client.Version}}'
return $dockerClientVersion
2021-02-09 22:50:11 +03:00
}
function Get-DockerMobyServerVersion {
$dockerServerVersion = sudo docker version --format '{{.Server.Version}}'
return $dockerServerVersion
}
function Get-DockerBuildxVersion {
2020-09-14 10:09:05 +03:00
$buildxVersion = docker buildx version | Take-OutputPart -Part 1 | Take-OutputPart -Part 0 -Delimiter "+"
return $buildxVersion
}
2022-05-16 17:49:51 +02:00
function Get-DockerAmazonECRCredHelperVersion {
$ecrVersion = docker-credential-ecr-login -v | Select-String "Version:" | Take-OutputPart -Part 1
return $ecrVersion
2022-05-16 17:49:51 +02:00
}
function Get-GitVersion {
$gitVersion = git --version | Take-OutputPart -Part -1
return $gitVersion
}
function Get-GitLFSVersion {
2020-10-07 18:26:40 +03:00
$result = Get-CommandResult "git-lfs --version"
$gitlfsversion = $result.Output | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/"
return $gitlfsversion
}
function Get-GitFTPVersion {
2020-09-14 10:09:05 +03:00
$gitftpVersion = git-ftp --version | Take-OutputPart -Part 2
return $gitftpVersion
}
function Get-GoogleCloudSDKVersion {
return (gcloud --version | Select-Object -First 1) | Take-OutputPart -Part 3
}
function Get-HavegedVersion {
2020-09-14 10:09:05 +03:00
$havegedVersion = dpkg-query --showformat='${Version}' --show haveged | Take-OutputPart -Part 0 -Delimiter "-"
return $havegedVersion
}
function Get-HerokuVersion {
2020-10-05 11:19:24 +03:00
$herokuVersion = heroku version | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/"
return $herokuVersion
}
function Get-HHVMVersion {
2020-09-14 10:09:05 +03:00
$hhvmVersion = hhvm --version | Select-Object -First 1 | Take-OutputPart -Part 2
return $hhvmVersion
}
function Get-SVNVersion {
2020-09-14 10:09:05 +03:00
$svnVersion = svn --version | Select-Object -First 1 | Take-OutputPart -Part 2
return $svnVersion
}
function Get-KustomizeVersion {
2020-09-14 10:09:05 +03:00
$kustomizeVersion = kustomize version --short | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "v"
return $kustomizeVersion
}
function Get-KindVersion {
2020-09-14 10:09:05 +03:00
$kindVersion = kind version | Take-OutputPart -Part 1 | Take-OutputPart -Part 0 -Delimiter "v"
return $kindVersion
}
function Get-KubectlVersion {
2022-05-04 17:09:51 +02:00
$kubectlVersion = (kubectl version --client --output=json | ConvertFrom-Json).clientVersion.gitVersion.Replace('v','')
return $kubectlVersion
}
function Get-MinikubeVersion {
2021-05-11 10:15:27 +03:00
$minikubeVersion = minikube version --short | Take-OutputPart -Part 0 -Delimiter "v"
return $minikubeVersion
}
function Get-HGVersion {
2020-09-14 10:09:05 +03:00
$hgVersion = hg --version | Select-Object -First 1 | Take-OutputPart -Part -1 | Take-OutputPart -Part 0 -Delimiter ")"
return $hgVersion
}
function Get-LeiningenVersion {
return "$(lein -v | Take-OutputPart -Part 1)"
}
2020-12-03 16:34:14 +01:00
function Get-MediainfoVersion {
$mediainfoVersion = (mediainfo --version | Select-Object -Index 1 | Take-OutputPart -Part 2).Replace('v', '')
return $mediainfoVersion
2020-12-03 16:34:14 +01:00
}
function Get-NewmanVersion {
return $(newman --version)
}
function Get-NVersion {
$nVersion = (n --version).Replace('v', '')
return $nVersion
}
function Get-NvmVersion {
2020-09-14 21:47:31 +03:00
$nvmVersion = bash -c "source /etc/skel/.nvm/nvm.sh && nvm --version"
return $nvmVersion
}
function Get-PackerVersion {
$packerVersion = packer --version
return $packerVersion
}
function Get-PhantomJSVersion {
$env:OPENSSL_CONF="/etc/ssl"; phantomjs --version
return $(phantomjs --version)
}
function Get-TerraformVersion {
return (terraform version | Select-String "^Terraform").Line.Replace('v','') | Take-OutputPart -Part 1
}
function Get-JqVersion {
2020-09-14 10:09:05 +03:00
$jqVersion = jq --version | Take-OutputPart -Part 1 -Delimiter "-"
return $jqVersion
}
function Get-AzureCliVersion {
$azcliVersion = (az version | ConvertFrom-Json).'azure-cli'
return $azcliVersion
}
function Get-AzureDevopsVersion {
$azdevopsVersion = (az version | ConvertFrom-Json).extensions.'azure-devops'
return $azdevopsVersion
}
function Get-AlibabaCloudCliVersion {
return $(aliyun version)
}
function Get-AWSCliVersion {
2020-10-07 18:26:40 +03:00
$result = Get-CommandResult "aws --version"
$awsVersion = $result.Output | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/"
return $awsVersion
}
function Get-AWSCliSessionManagerPluginVersion {
2020-10-07 18:26:40 +03:00
$result = (Get-CommandResult "session-manager-plugin --version").Output
return $result
}
function Get-AWSSAMVersion {
return $(sam --version | Take-OutputPart -Part -1)
}
2021-02-19 18:33:28 +03:00
function Get-FastlaneVersion {
$fastlaneVersion = fastlane --version | Select-String "^fastlane [0-9]" | Take-OutputPart -Part 1
return $fastlaneVersion
2021-02-19 18:33:28 +03:00
}
function Get-HubCliVersion {
2020-09-14 10:09:05 +03:00
$hubVersion = hub --version | Select-String "hub version" | Take-OutputPart -Part 2
return $hubVersion
}
function Get-GitHubCliVersion {
2020-09-14 10:09:05 +03:00
$ghVersion = gh --version | Select-String "gh version" | Take-OutputPart -Part 2
return $ghVersion
}
function Get-NetlifyCliVersion {
2020-10-05 11:19:24 +03:00
$netlifyVersion = netlify --version | Take-OutputPart -Part 0 | Take-OutputPart -Part 1 -Delimiter "/"
return $netlifyVersion
}
function Get-OCCliVersion {
$ocVersion = oc version -o=json | jq -r '.releaseClientVersion'
return $ocVersion
}
function Get-ORASCliVersion {
2020-09-14 10:09:05 +03:00
$orasVersion = oras version | Select-String "^Version:" | Take-OutputPart -Part 1
return $orasVersion
}
function Get-VerselCliversion {
2020-10-07 18:26:40 +03:00
$result = Get-CommandResult "vercel --version" -Multiline
return $result.Output | Select-Object -Skip 1 -First 1
}
2020-09-24 15:07:30 +03:00
function Get-PulumiVersion {
$pulumiVersion = pulumi version | Take-OutputPart -Part 0 -Delimiter "v"
return $pulumiVersion
2020-09-24 15:07:30 +03:00
}
function Get-RVersion {
2020-09-24 23:39:14 +03:00
$rVersion = (Get-CommandResult "R --version | grep 'R version'").Output | Take-OutputPart -Part 2
return $rVersion
2020-09-24 15:07:30 +03:00
}
2020-09-24 16:50:28 +03:00
function Get-SphinxVersion {
2020-09-24 23:39:14 +03:00
$sphinxVersion = searchd -h | Select-Object -First 1 | Take-OutputPart -Part 1 | Take-OutputPart -Part 0 -Delimiter "-"
return $sphinxVersion
2020-10-02 11:23:02 +03:00
}
function Get-YamllintVersion {
return $(yamllint --version) | Take-OutputPart -Part 1
}
2021-04-14 19:34:49 +03:00
function Get-ZstdVersion {
$zstdVersion = zstd --version | Take-OutputPart -Part 1 -Delimiter "v" | Take-OutputPart -Part 0 -Delimiter ","
2022-12-29 23:33:04 +01:00
return "$zstdVersion"
2021-04-14 19:34:49 +03:00
}
2021-07-15 11:21:48 +02:00
function Get-YqVersion {
2022-12-23 09:38:33 +01:00
$yqVersion = $(yq -V) | Take-OutputPart -Part 3
return $yqVersion.TrimStart("v").Trim()
}