Skip to content

Set-VcpkgWriteModeCache -- add token timeout param #12527

Merged
danieljurek merged 1 commit intomainfrom
djurek/vcpkg-cache-timeout-param
Oct 17, 2025
Merged

Set-VcpkgWriteModeCache -- add token timeout param #12527
danieljurek merged 1 commit intomainfrom
djurek/vcpkg-cache-timeout-param

Conversation

@danieljurek
Copy link
Copy Markdown
Member

@danieljurek danieljurek commented Oct 16, 2025

In some cases (C++ API View) a cmake generate task can take multiple hours to complete successfully. In that time the storage token for the cache expires. While the job doesn't fail because of a cache authentication error, we lose the benefits of the cache.

Example failure: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5425321&view=logs&j=3dc8fd7e-4368-5a92-293e-d53cefc8c4b3&t=00170b8f-1061-5420-820e-1eb883d5ca57&l=200

Example of the pipeline working with a longer token timeout: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5462833&view=logs&j=3dc8fd7e-4368-5a92-293e-d53cefc8c4b3&t=00170b8f-1061-5420-820e-1eb883d5ca57&l=106

…'s that exceed 1 hour (this can happen in C++ API View)
@danieljurek danieljurek requested a review from a team as a code owner October 16, 2025 17:57
Copilot AI review requested due to automatic review settings October 16, 2025 17:57
@danieljurek danieljurek self-assigned this Oct 16, 2025
@danieljurek danieljurek moved this from 🤔 Triage to 🔬 Dev in PR in Azure SDK EngSys 🚀🌒🧑‍🚀 Oct 16, 2025
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds configurable token timeout support for vcpkg cache operations to handle long-running C++ API View builds that exceed the default 1-hour token expiration.

  • Adds a TokenTimeoutInHours parameter (default: 1 hour) to the vcpkg cache configuration
  • Updates the SAS token generation to use the configurable timeout instead of hardcoded 1 hour
  • Enables pipeline consumers to specify longer token lifetimes when needed

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
eng/common/scripts/Set-VcpkgWriteModeCache.ps1 Adds TokenTimeoutInHours parameter and applies it to SAS token expiry
eng/common/pipelines/templates/steps/set-vcpkg-cache-vars.yml Defines template parameter and passes it to the PowerShell script

@azure-sdk
Copy link
Copy Markdown
Collaborator

The following pipelines have been queued for testing:
java - template
java - template - tests
js - template
net - template
net - template - tests
python - template
python - template - tests
You can sign off on the approval gate to test the release stage of each pipeline.
See eng/common workflow

azure-sdk added a commit to Azure/azure-sdk-for-js that referenced this pull request Oct 17, 2025
Sync eng/common directory with azure-sdk-tools for PR
Azure/azure-sdk-tools#12527 See [eng/common
workflow](https://github.com/Azure/azure-sdk-tools/blob/main/eng/common/README.md#workflow)

Co-authored-by: Daniel Jurek <djurek@microsoft.com>
azure-sdk added a commit to Azure/azure-sdk-for-rust that referenced this pull request Oct 17, 2025
Sync eng/common directory with azure-sdk-tools for PR
Azure/azure-sdk-tools#12527 See [eng/common
workflow](https://github.com/Azure/azure-sdk-tools/blob/main/eng/common/README.md#workflow)

Co-authored-by: Daniel Jurek <djurek@microsoft.com>
@danieljurek danieljurek enabled auto-merge (squash) October 17, 2025 04:05
@danieljurek danieljurek merged commit 87fd04c into main Oct 17, 2025
12 checks passed
@danieljurek danieljurek deleted the djurek/vcpkg-cache-timeout-param branch October 17, 2025 04:06
@kurtzeborn kurtzeborn moved this from 🔬 Dev in PR to 🎊 Closed in Azure SDK EngSys 🚀🌒🧑‍🚀 Oct 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

5 participants