grafana / grafana/pyroscope-java

CI jobs fail when Maven Central rate-limits dependency downloads

Ouverte
#360 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
126
Forks
48
Merge moyen
4 j 14 h
PR mergées (30 j)
5

Description

## Problem

GitHub Actions jobs intermittently fail before compilation or test execution because Maven Central returns HTTP 429 responses while Gradle resolves build dependencies.

Recent failures affected the build, Javadoc, and integration-test workflows. The integration workflow expands into a large matrix, and every job builds `pyroscope.jar` independently inside Docker. This creates a burst of duplicate dependency downloads from the same runner infrastructure.

Example error:

```text
Could not resolve all artifacts for configuration 'classpath'.
Could not GET https://repo.maven.apache.org/maven2/...
Received status code 429 from server: Too Many Requests
```

These failures are infrastructure-related and can make unrelated changes appear broken.

## Expected behavior

CI dependency resolution should remain reliable when the complete build and integration matrices run concurrently.

## Proposed mitigation

- enable Gradle dependency caching in build, test, and Javadoc jobs
- cache dependencies before upgrading the Gradle wrapper for newer Java versions
- limit integration-test matrix concurrency

A longer-term improvement would be to build `pyroscope.jar` once and reuse it across integration jobs instead of running `shadowJar` independently in every Docker build.

## Related

- #359
- Failed main workflow run: https://github.com/grafana/pyroscope-java/actions/runs/32238963961
- Failed integration workflow run: https://github.com/grafana/pyroscope-java/actions/runs/32238964071

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Examinez d’abord les définitions des workflows de build, de test, de Javadoc et d’intégration, en utilisant les exécutions de workflow échouées liées pour comparer leur comportement de résolution des dépendances. Vérifiez la matrice d’intégration et le chemin de build Docker pour pyroscope.jar ; le travail est terminé lorsque la matrice complète peut s’exécuter simultanément sans erreurs 429 récurrentes de Maven Central.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
docker, github-actions, java
Domaine
build-system, ci-cd, devops
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Active
Clarté
Plutôt claire
Accessibilité débutants
58/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.