aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorBilly O'Neal <bion@microsoft.com>2020-06-25 16:38:13 -0700
committerGitHub <noreply@github.com>2020-06-25 16:38:13 -0700
commitf10c49281abbd42ff5aa9a0a3846d935c41b943a (patch)
tree41eca3bf33a3bcddc7cb38c3a918208ce85a822c /scripts
parent0d37525d753801a8429e13069b7ba82865541a09 (diff)
downloadvcpkg-f10c49281abbd42ff5aa9a0a3846d935c41b943a.tar.gz
vcpkg-f10c49281abbd42ff5aa9a0a3846d935c41b943a.zip
[vcpkg] Add disk space report to Windows PR/CI (#12113)
* [vcpkg] Add disk space report to PR/CI Example output: ``` Disk Label Size Free Space ---- ----- ---- ---------- C: Sabrent 1907 GiB 1239 GiB D: Dev 447 GiB 383 GiB E: Samsung 960 Pro 1908 GiB 1084 GiB H: Rocket 3815 GiB 863 GiB R: 0 B 0 B S: 0 B 0 B ```
Diffstat (limited to 'scripts')
-rw-r--r--scripts/azure-pipelines/windows/azure-pipelines.yml10
-rw-r--r--scripts/azure-pipelines/windows/disk-space.ps135
2 files changed, 45 insertions, 0 deletions
diff --git a/scripts/azure-pipelines/windows/azure-pipelines.yml b/scripts/azure-pipelines/windows/azure-pipelines.yml
index 0f2120746..69ea089d6 100644
--- a/scripts/azure-pipelines/windows/azure-pipelines.yml
+++ b/scripts/azure-pipelines/windows/azure-pipelines.yml
@@ -15,6 +15,11 @@ jobs:
displayName: 'Initialize Environment'
inputs:
filePath: 'scripts/azure-pipelines/windows/initialize-environment.ps1'
+ - task: PowerShell@2
+ displayName: 'Report on Disk Space'
+ condition: always()
+ inputs:
+ filePath: 'scripts/azure-pipelines/windows/disk-space.ps1'
# Note: D: is the Azure machines' temporary disk.
- task: CmdLine@2
displayName: 'Build vcpkg'
@@ -48,6 +53,11 @@ jobs:
inputs:
testResultsFiles: '$(System.ArtifactsDirectory)/xml-results/${{ parameters.triplet }}.xml'
condition: always()
+ - task: PowerShell@2
+ displayName: 'Report on Disk Space After Build'
+ condition: always()
+ inputs:
+ filePath: 'scripts/azure-pipelines/windows/disk-space.ps1'
- task: PublishBuildArtifacts@1
displayName: 'Publish Artifact: ${{ parameters.triplet }} port build failure logs'
inputs:
diff --git a/scripts/azure-pipelines/windows/disk-space.ps1 b/scripts/azure-pipelines/windows/disk-space.ps1
new file mode 100644
index 000000000..8680d7701
--- /dev/null
+++ b/scripts/azure-pipelines/windows/disk-space.ps1
@@ -0,0 +1,35 @@
+# Copyright (c) Microsoft Corporation.
+# SPDX-License-Identifier: MIT
+#
+
+<#
+.SYNOPSIS
+Prints total and free disk space for each disk on the system
+#>
+
+Function Format-Size {
+ [CmdletBinding()]
+ Param([long]$Size)
+
+ if ($Size -lt 1024) {
+ $Size = [int]$Size
+ return "$Size B"
+ }
+
+ $Size = $Size / 1024
+ if ($Size -lt 1024) {
+ $Size = [int]$Size
+ return "$Size KiB"
+ }
+
+ $Size = $Size / 1024
+ if ($Size -lt 1024) {
+ $Size = [int]$Size
+ return "$Size MiB"
+ }
+
+ $Size = [int]($Size / 1024)
+ return "$Size GiB"
+}
+
+Get-CimInstance -ClassName Win32_LogicalDisk | Format-Table -Property @{Label="Disk"; Expression={ $_.DeviceID }},@{Label="Label"; Expression={ $_.VolumeName }},@{Label="Size"; Expression={ Format-Size($_.Size) }},@{Label="Free Space"; Expression={ Format-Size($_.FreeSpace) }}