Skip to content

Add spec_update workflow for automated API spec updates#591

Merged
cguldner merged 1 commit into
dropbox:mainfrom
cguldner:add-spec-update-workflow
Jul 21, 2026
Merged

Add spec_update workflow for automated API spec updates#591
cguldner merged 1 commit into
dropbox:mainfrom
cguldner:add-spec-update-workflow

Conversation

@cguldner

Copy link
Copy Markdown
Contributor

Summary

  • Add a new spec_update.yml GitHub Actions workflow matching the pattern used across other Dropbox SDKs
  • Uses OIDC + GitHub App token (sdk-updater-github-app) via AWS Secrets Manager
  • Updates the core/src/main/stone submodule to latest, then runs ./gradlew :core:generateStone to regenerate code
  • Closes superseded spec update PRs with a comment linking to the replacement
  • Adds automated-spec-update label for filtering/tracking
  • Triggered via workflow_dispatch or repository_dispatch (type: spec_update)

Notes

  • Uses ./update-submodules first to init all submodules (including core/stone), then git submodule update --remote core/src/main/stone to pull the latest spec
  • The IAM role oidc-github-dropbox-dropbox-sdk-java-repo needs to be created (the existing oidc-github-dropbox-dropbox-sdk-java-branch-main is scoped to the main branch only)
  • The dropbox-sdk-java repo also needs to be added to the dispatch_spec_update.yml matrix in dropbox-api-spec

Test plan

  • Verify the IAM role exists (or create it) with access to sdk-updater-github-app
  • Trigger via workflow_dispatch and confirm generation succeeds
  • Confirm old PRs get closed and commented when a new spec update runs
  • Verify the multiline commit message renders correctly in the PR body

🤖 Generated with Claude Code

Add a GitHub Actions workflow that updates the dropbox-api-spec
submodule, regenerates Java SDK code via Gradle, and opens a PR.
Uses OIDC + GitHub App token via AWS Secrets Manager, closes
superseded PRs, and labels for tracking.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@cguldner
cguldner merged commit bf143b0 into dropbox:main Jul 21, 2026
5 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.

2 participants