azure-sdk-for-cpp/eng/pipelines/templates/steps/vcpkg.yml
Victor Vazquez 835f156af9
Vcpkg manifest and binary caching (#3329)
* binary cache and manifest

* update packages

* udpate

* add cache to private pipeline

* next try

* aver

* other

* again

* aver quick

* more

* this way

* again

* one more

* print

* test

* use depend

* more deps

* dep

* Apply suggestions from code review

Co-authored-by: Daniel Jurek <djurek@microsoft.com>

* updated to use group variable

* update identity

* end line

* Update vcpkg.json

* Apply suggestions from code review

* cspell

* remove comment

* updates

* make cache mode depend on SAS env var

* map env var only for internal pipelines

* other approach

* what about this

* and this

* try

* amd

* another

* extra step

* typo

* override for internal

* use default succeded

* azure core update manifest

* a

* run cmake-generate nightly as well

* check for SAS

* check cache

* no secret

* fix is secret

* pass explicit

* use secret all the time

* char

* One more

* export

* echos

* last

* array

* remove question

* ok

* weird

* use account key

* substring

* VCPKG_BINARY_SOURCES

* Add module installation

* task:

* Correct pathing for module

* update source gen

* format

* update spelling

* IsWindoows

* Use pwsh

* Cannot clobber with PSModule-Helpers. Attempt plain install

* Attempt plain install

* Revert unnecessary change to Update-DocsMsToc.ps1

* template ready

* curl is required on Windows as well for some CI gates

* attestation

* fix format

Co-authored-by: Daniel Jurek <djurek@microsoft.com>
2022-03-24 09:11:30 -07:00

34 lines
1.3 KiB
YAML

steps:
- pwsh: |
$TargetPath = "$(Agent.TempDirectory)/vcpkg"
Remove-Item -Path $TargetPath -Recurse -Force -ErrorAction Ignore
New-Item -ItemType Directory -Path $TargetPath -Force
$VcpkgCommit = $(Get-Content eng/vcpkg-commit.txt)
Write-Host "Target Path for vcpkg: $TargetPath"
Write-Host "Vcpkg SHA: $VcpkgCommit"
Write-Host "##vso[task.prependpath]$TargetPath"
Write-Host "##vso[task.setvariable variable=VCPKG_INSTALLATION_ROOT]$TargetPath"
Write-Host "##vso[task.setvariable variable=VcpkgCommit]$VcpkgCommit"
Write-Host "##vso[task.setvariable variable=VCPKG_BINARY_SOURCES_SECRET;issecret=true;]clear;x-azblob,https://cppvcpkgcache.blob.core.windows.net/public-vcpkg-container,,read"
displayName: Set Vcpkg Variables
- task: PowerShell@2
inputs:
pwsh: true
targetType: filePath
filePath: eng/scripts/Set-VcpkgWriteModeCache.ps1
arguments: -StorageAccountKey '$(cpp-vcpkg-cache-storage-key)'
displayName: Set Vcpkg Write-mode Cache
condition: eq(variables['System.TeamProject'], 'internal')
- task: PowerShell@2
inputs:
targetType: filePath
filePath: eng/scripts/vcpkg.ps1
arguments: >-
-Ref $(VcpkgCommit)
-VcpkgPath $(VCPKG_INSTALLATION_ROOT)
pwsh: true