Skip to content

chore: authenticate the GitHub API calls in the integration workflow - #290

Merged
aldbr merged 7 commits into
DIRACGrid:develfrom
fstagni:ci/authenticate-api-calls
Nov 10, 2026
Merged

aldbr merged 7 commits into
DIRACGrid:develfrom
fstagni:ci/authenticate-api-calls

Conversation

@fstagni

@fstagni fstagni commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

CI fix: authenticate the GitHub API calls in the integration workflow

The four calls listing the DIRAC releases in .github/workflows/integration.yml:

version=$(curl -s "https://api.github.com/repos/DIRACGrid/DIRAC/releases" | jq -r '.[].tag_name' | ...)

are unauthenticated and therefore rate limited to 60 requests/hour per IP — and runner IPs are shared. When throttled, the response body has no .tag_name to extract, version comes out empty, and sourcing /cvmfs/dirac.egi.eu/dirac/${version}/... fails: intermittent job failures unrelated to the PR content.

Per review, the four calls now use `gh api repos/DIRACGrid/DIRAC/releases --jq '.[].tag_name'` with `GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}` in each step's env (same treatment as DIRACGrid/DIRAC#8879, where the review suggested `gh`). Public endpoint, the token only lifts the rate limit.

Evidence

Merge Danger

Door: two-way — adds an auth header to public API calls; at worst the same flakiness as today.

Blast Radius: CI only.

fstagni and others added 6 commits November 18, 2025 09:47
Increase artifact retention time a little
newMaster_20261020: merge devel into master

* commit '5d9e685':
  fix: skip integration tests on the central DIRACGrid repository
  fix: allow merge commits in the commit message check
  fix: purge site environment variables before repopulating installEnv
  fix: Increase artifact retention time a little
  fix: Make genericOptions a list
@fstagni
fstagni changed the base branch from master to devel November 9, 2026 17:00
@fstagni
fstagni force-pushed the ci/authenticate-api-calls branch from e8a2668 to c254cce Compare November 9, 2026 17:15
The four calls listing the DIRAC releases were unauthenticated and
therefore rate limited per IP; on shared runner IPs they intermittently
return an error body, leaving the DIRAC release version empty and
failing the job. Use 'gh api' with the workflow token instead (same
treatment as DIRACGrid/DIRAC#8879 for the Pilot artifacts listing).
@fstagni
fstagni force-pushed the ci/authenticate-api-calls branch from c254cce to 014bc71 Compare November 9, 2026 18:39
@aldbr
aldbr merged commit ca23435 into DIRACGrid:devel Nov 10, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants