Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

save-package-properties runs twice per build job, costing ~50s per PR build

Abierto
#48,395 0 comentarios 2 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@JennyPng ya está trabajando en esto.

Desde el 1/8/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

EngSys

eng/pipelines/templates/steps/build-package-artifacts.yml invokes save-package-properties.yml twice: at line 91 (before the daily-dev version is applied) and again at line 102, after set-dev-build.yml.

set-dev-build.yml gates the actual version update on SetDevVersion, which daily-dev-build-variable.yml only sets to true when Build.Reason == 'Schedule' and System.TeamProject == 'internal'. The second save-package-properties invocation has no such gate, so on PR builds it appears to re-run after nothing has changed.

Measured

Build 6647478 (python - pullrequest, definition 7050) runs it twice in each of three jobs:

Job durations apparently redundant
Build_Linux 21.6s, 15.3s 15.3s
Build_MacOS 17.9s, 13.4s 13.4s
Build_Windows 58.0s, 21.2s 21.2s

Roughly 50s of agent time per PR build, though spread across parallel jobs, so the wall-clock impact depends on which job is on your critical path.

Caveat

I am inferring the redundancy from the conditional structure and the timeline data, not from knowledge of this repo. If the second call has a side effect I'm not seeing on PR builds, please close this out — I'd rather be corrected than have you carry a bogus issue.

Fix path

save-package-properties.yml has no Condition parameter, and it lives under eng/common/, which is synced from Azure/azure-sdk-tools. SetDevVersion is a runtime variable, so a compile-time ${{ if }} won't work either.

Azure/azure-sdk-tools#16640 proposes adding a Condition parameter (precedent exists — verify-readme.yml and verify-changelog.yml already take one). Once that lands, the change here would be to gate the second invocation on eq(variables['SetDevVersion'], 'true').

How this was found

While measuring CI step timings in azure-sdk-for-js, we found the same double-invocation in our build.yml (~30s per PR build, tracked in Azure/azure-sdk-for-js#39484). Checking whether the pattern was shared turned up the same structure here, so I verified it against your build timelines. Data came from the public ADO API, which is readable without auth for the azure-sdk/public project.

Filed by GitHub Copilot on behalf of @xirzec, from cross-repo CI measurement work. Happy to be told this is a non-issue.

Lenguaje dominante
Python
Estrellas
5.6k
Forks
3.4k
Merge medio
2 d 12 h
PR fusionados (30 d)
210

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de Azure/azure-sdk-for-python

Todos los issues de Azure/azure-sdk-for-python

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.