Skip to content

ci: unstick CI (drop macos-13), fix 32-bit mutex build, make OCR advisory - #15

Merged
gburd merged 2 commits into
masterfrom
fix/ci
Jun 16, 2026
Merged

ci: unstick CI (drop macos-13), fix 32-bit mutex build, make OCR advisory#15
gburd merged 2 commits into
masterfrom
fix/ci

Conversation

@gburd

@gburd gburd commented Jun 16, 2026

Copy link
Copy Markdown
Collaborator

Fixes the stuck/failed CI observed after the recent merges.

  • macos-13 hang (root cause of stuck runs): the Intel macos-13 runners queued for 2h+ and never completed, stalling the entire matrix. Switched to macos-14 (Apple silicon) + macos-latest.
  • 32-bit Linux build (continue-on-error, but now fixed): -m32 selected the x86 test-and-set mutex path → mutex_int.h: unknown type name 'tsl_t'. Configure with --with-mutex=POSIX/pthreads.
  • OCR review: made the job continue-on-error so it's advisory and never blocks a PR.

Action required (AWS side, not code)

OCR fails at sts:AssumeRoleWithWebIdentity (Not authorized). The repo variables are set, but the IAM role in AWS_ROLE_ARN needs a trust policy allowing GitHub OIDC for this repo, e.g. principal token.actions.githubusercontent.com with sub like repo:berkeleydb/libdb:* and audience sts.amazonaws.com. Once that's set, OCR will authenticate.

gburd added 2 commits June 16, 2026 11:52
- Drop macos-13 (Intel) runners — they queue for 2h+ and never complete,
  stalling the whole CI run; use macos-14 (Apple silicon) + macos-latest.
- 32-bit Linux build: configure --with-mutex=POSIX/pthreads to avoid the x86
  test-and-set path (mutex_int.h 'unknown type name tsl_t' under -m32).
- OCR review job: continue-on-error so it's advisory and never blocks a PR
  (e.g. while AWS OIDC role trust is being configured).

Note: OCR's AssumeRoleWithWebIdentity failure is an AWS IAM trust-policy issue
(role must trust token.actions.githubusercontent.com for repo:berkeleydb/libdb),
not a workflow bug.
- meson.build: add -D_DEFAULT_SOURCE/-D_BSD_SOURCE so glibc exposes the BSD
  type names (u_int, u_char, u_long, u_int8_t ...) that db.h uses; macOS/*BSD
  provide them unconditionally (no-op). Fixes the meson/ninja and nix-flake
  jobs on Linux ('unknown type name u_int').
- ci.yml: exclude the --enable-cxx config on macOS; BDB's C++ headers don't
  compile against Xcode's libc++ <atomic> (macOS-specific; Linux cxx is fine).
@gburd
gburd merged commit 16e6457 into master Jun 16, 2026
36 of 39 checks passed
@gburd
gburd deleted the fix/ci branch June 16, 2026 16:05
gburd added a commit that referenced this pull request Jul 31, 2026
ci: unstick CI (drop macos-13), fix 32-bit mutex build, make OCR advisory
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.

1 participant