From 06f9bfa9a955bb56da452bc18d0b284b1c6f5dd3 Mon Sep 17 00:00:00 2001 From: Jarret Shook Date: Tue, 28 Apr 2020 15:54:46 -0700 Subject: [PATCH] Add disk usage on osx (#35522) * Add disk usage information for mac builds * Add disk usage for test build as well * Like normal, yml syntax change * Add more usage * yml syntax * Show du on ios and tvos * Add before and after usage * Address pr feedback --- eng/pipelines/common/global-build-job.yml | 12 ++++++++++++ eng/pipelines/common/templates/runtimes/build-test-job.yml | 11 +++++++++++ eng/pipelines/coreclr/templates/build-job.yml | 12 ++++++++++++ eng/pipelines/installer/jobs/base-job.yml | 12 ++++++++++++ eng/pipelines/libraries/build-job.yml | 12 ++++++++++++ eng/pipelines/libraries/build-test-job.yml | 12 ++++++++++++ eng/pipelines/mono/templates/build-job.yml | 12 ++++++++++++ 7 files changed, 83 insertions(+) diff --git a/eng/pipelines/common/global-build-job.yml b/eng/pipelines/common/global-build-job.yml index b514047..75d9678 100644 --- a/eng/pipelines/common/global-build-job.yml +++ b/eng/pipelines/common/global-build-job.yml @@ -37,10 +37,22 @@ jobs: - template: /eng/pipelines/common/clone-checkout-bundle-step.yml + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build + # Build - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -ci -arch ${{ parameters.archType }} ${{ parameters.buildArgs }} displayName: Build product + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build + - task: PublishBuildArtifacts@1 displayName: Publish Logs inputs: diff --git a/eng/pipelines/common/templates/runtimes/build-test-job.yml b/eng/pipelines/common/templates/runtimes/build-test-job.yml index 3cda015..1c00627 100644 --- a/eng/pipelines/common/templates/runtimes/build-test-job.yml +++ b/eng/pipelines/common/templates/runtimes/build-test-job.yml @@ -120,11 +120,22 @@ jobs: artifactFileName: '$(coreClrProductArtifactName)$(archiveExtension)' artifactName: '$(coreClrProductArtifactName)' displayName: 'CoreCLR product build' + + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build # Build managed test components - script: $(coreClrRepoRootDir)build-test$(scriptExt) ${{ parameters.testBuildPhase }} skipnative skipgeneratelayout skiptestwrappers $(buildConfig) $(archType) $(crossArg) $(priorityArg) ci $(librariesOverrideArg) displayName: Build managed test components + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build # Zip and publish managed test components - template: /eng/pipelines/common/upload-artifact-step.yml diff --git a/eng/pipelines/coreclr/templates/build-job.yml b/eng/pipelines/coreclr/templates/build-job.yml index 6281b46..f14883b 100644 --- a/eng/pipelines/coreclr/templates/build-job.yml +++ b/eng/pipelines/coreclr/templates/build-job.yml @@ -118,6 +118,12 @@ jobs: - ${{ if and(eq(variables['System.TeamProject'], 'internal'), ne(variables['Build.Reason'], 'PullRequest')) }}: - template: /eng/pipelines/common/restore-internal-tools.yml + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build + # Build CoreCLR Runtime - ${{ if ne(parameters.osGroup, 'Windows_NT') }}: - script: $(coreClrRepoRootDir)build-runtime$(scriptExt) $(buildConfig) $(archType) $(crossArg) $(osArg) -ci $(compilerArg) $(officialBuildIdArg) @@ -126,6 +132,12 @@ jobs: - script: set __TestIntermediateDir=int&&$(coreClrRepoRootDir)build-runtime$(scriptExt) $(buildConfig) $(archType) -ci $(enforcePgoArg) $(officialBuildIdArg) displayName: Build CoreCLR Runtime + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build + - ${{ if and(eq(parameters.osGroup, 'Windows_NT'), ne(parameters.archType, 'x86')) }}: - script: set __TestIntermediateDir=int&&$(coreClrRepoRootDir)build-runtime$(scriptExt) $(buildConfig) $(archType) -ci -linuxdac $(officialBuildIdArg) displayName: Build Cross OS Linux DAC for Windows diff --git a/eng/pipelines/installer/jobs/base-job.yml b/eng/pipelines/installer/jobs/base-job.yml index 97c16e5..51070d1 100644 --- a/eng/pipelines/installer/jobs/base-job.yml +++ b/eng/pipelines/installer/jobs/base-job.yml @@ -431,9 +431,21 @@ jobs: displayName: 'Libraries artifacts (AllConfigurations)' cleanUnpackFolder: false + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build + - script: $(BaseJobBuildCommand) displayName: Build + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build + # Only in glibc leg, we produce RPMs and Debs - ${{ if and(eq(parameters.runtimeFlavor, 'coreclr'), eq(parameters.platform, 'Linux_x64'), eq(parameters.osSubgroup, ''))}}: - task: CopyFiles@2 diff --git a/eng/pipelines/libraries/build-job.yml b/eng/pipelines/libraries/build-job.yml index c28f1db..3859cbe 100644 --- a/eng/pipelines/libraries/build-job.yml +++ b/eng/pipelines/libraries/build-job.yml @@ -82,12 +82,24 @@ jobs: - ${{ if eq(parameters.isOfficialBuild, true) }}: - template: /eng/pipelines/common/restore-internal-tools.yml + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build + - script: $(_buildScript) -subset $(_subset) $(_buildArguments) $(_additionalBuildArguments) displayName: Restore and Build Product + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build + - ${{ if eq(parameters.runTests, false) }}: - ${{ if ne(parameters.isOfficialBuild, true) }}: - task: CopyFiles@2 diff --git a/eng/pipelines/libraries/build-test-job.yml b/eng/pipelines/libraries/build-test-job.yml index 82da238..c58de83 100644 --- a/eng/pipelines/libraries/build-test-job.yml +++ b/eng/pipelines/libraries/build-test-job.yml @@ -55,12 +55,24 @@ jobs: unpackFolder: $(Build.SourcesDirectory)/artifacts cleanUnpackFolder: false + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build + - script: $(_buildScript) -subset libs.pretest+libs.tests $(_buildArguments) $(_archiveTestsParameter) displayName: Restore and Build + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build + - template: /eng/pipelines/common/upload-artifact-step.yml parameters: rootFolder: $(Build.SourcesDirectory)/artifacts/helix diff --git a/eng/pipelines/mono/templates/build-job.yml b/eng/pipelines/mono/templates/build-job.yml index e7ce2b9..136c83c 100644 --- a/eng/pipelines/mono/templates/build-job.yml +++ b/eng/pipelines/mono/templates/build-job.yml @@ -97,6 +97,12 @@ jobs: - script: $(Build.SourcesDirectory)\eng\common\init-tools-native.cmd -InstallDirectory $(Build.SourcesDirectory)\native-tools -Force displayName: Install native dependencies + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage before Build + # Build - ${{ if ne(parameters.osGroup, 'Windows_NT') }}: - script: ./build$(scriptExt) -subset mono -c $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoEnableLLVM=${{ parameters.llvm }} @@ -105,6 +111,12 @@ jobs: - script: build$(scriptExt) -subset mono -c $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoEnableLLVM=${{ parameters.llvm }} displayName: Build product + - ${{ if in(parameters.osGroup, 'OSX', 'iOS','tvOS') }}: + - script: | + du -sh $(Build.SourcesDirectory)/* + df -h + displayName: Disk Usage after Build + # Publish product output directory for consumption by tests. - template: /eng/pipelines/common/upload-artifact-step.yml parameters: -- 2.7.4