mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-28 11:21:12 +08:00
403c952a0c
Now that vcpkg has artifact caching, meaning downloading artifacts usually doesn't have to leave the datacenter, there's no need to potentially dirty different runs with leftover downloads from each other. This resulted in some "impossible" results in https://github.com/microsoft/vcpkg/pull/18687 where a previous PR run accidentially downloaded the Windows version of nodejs to /mnt/vcpkg-ci/downloads/node-v14.17.4-linux-x64.tar.xz
67 lines
2.2 KiB
YAML
67 lines
2.2 KiB
YAML
# Copyright (c) Microsoft Corporation.
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
jobs:
|
|
- job: x64_linux
|
|
pool:
|
|
name: ${{ parameters.poolName }}
|
|
workspace:
|
|
clean: resources
|
|
timeoutInMinutes: 1440 # 1 day
|
|
variables:
|
|
- name: WORKING_ROOT
|
|
value: /mnt/vcpkg-ci
|
|
- name: VCPKG_DOWNLOADS
|
|
value: /mnt/vcpkg-ci/downloads
|
|
- group: vcpkg-asset-caching-credentials
|
|
- name: X_VCPKG_ASSET_SOURCES
|
|
value: "x-azurl,$(root-url),$(sas),readwrite"
|
|
|
|
steps:
|
|
- bash: df -h
|
|
displayName: 'Report on Disk Space'
|
|
- bash: |
|
|
sudo mkdir /home/agent -m=777
|
|
sudo chown `id -u` /home/agent
|
|
exit 0
|
|
displayName: 'Create /home/agent'
|
|
# Note: /mnt is the Azure machines' temporary disk.
|
|
- bash: |
|
|
sudo rm -rf ${{ variables.VCPKG_DOWNLOADS }}
|
|
sudo mkdir ${{ variables.WORKING_ROOT }} -m=777
|
|
sudo mkdir ${{ variables.VCPKG_DOWNLOADS }} -m=777
|
|
exit 0
|
|
displayName: 'Create ${{ variables.WORKING_ROOT }} and ${{ variables.VCPKG_DOWNLOADS }}'
|
|
- task: Bash@3
|
|
displayName: 'Bootstrap vcpkg'
|
|
inputs:
|
|
filePath: bootstrap-vcpkg.sh
|
|
- task: PowerShell@2
|
|
displayName: '*** Test Modified Ports and Prepare Test Logs ***'
|
|
inputs:
|
|
failOnStderr: true
|
|
filePath: 'scripts/azure-pipelines/test-modified-ports.ps1'
|
|
arguments: '-Triplet x64-linux -BuildReason $(Build.Reason) -UseEnvironmentSasToken -WorkingRoot ${{ variables.WORKING_ROOT }} -ArtifactStagingDirectory $(Build.ArtifactStagingDirectory)'
|
|
pwsh: true
|
|
- bash: |
|
|
df -h
|
|
displayName: 'Report on Disk Space After Build'
|
|
condition: always()
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: 'Publish Artifact: failure logs for x64-linux'
|
|
inputs:
|
|
PathtoPublish: '$(Build.ArtifactStagingDirectory)/failure-logs'
|
|
ArtifactName: 'failure logs for x64-linux'
|
|
condition: always()
|
|
- bash: |
|
|
python3 scripts/file_script.py /mnt/vcpkg-ci/installed/vcpkg/info/
|
|
displayName: 'Build a file list for all packages'
|
|
condition: always()
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: 'Publish Artifact: file lists for x64-linux'
|
|
condition: always()
|
|
inputs:
|
|
PathtoPublish: scripts/list_files
|
|
ArtifactName: 'file lists for x64-linux'
|