-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Open
Description
Title
Add CI pipeline to mass‑regenerate api.md using azpysdk apiview --md
Summary
Add a CI pipeline that automatically regenerates api.md across Python packages using azpysdk apiview --md and opens a draft PR when changes are detected.
This pipeline should run when the apistub version changes (and be runnable manually).
Proposed Implementation (Actionable)
-
Create a new pipeline
- Location:
eng/*/jobs - Linux only
- PR triggers disabled
- Location:
-
Configure triggers
- CI trigger path scoped to the file that bumps
eng/apiview_reqs.txt - Allow manual runs
- CI trigger path scoped to the file that bumps
-
Pipeline steps
- Checkout repo
- Install
azure-sdk-tools - For each Python package:
- Run:
to regenerate
azpysdk apiview --md
api.md
- Run:
- After all packages complete:
- Run
git diff - If no diffs → exit successfully
- If diffs exist → continue
- Run
-
Create a draft PR
- Use the existing
create-pull-requestYAML template - Open a draft PR back to the repo
- PR should contain only
api.mdchanges
- Use the existing
-
Parallelism
- Use dispatch / parallel jobs for per‑package generation to keep runtime reasonable
Non‑Goals
- No manual per‑package updates
- No APIView UI or review flow changes
Acceptance Criteria
- Linux pipeline added under
eng/*/jobs - Pipeline runs on apistub version changes in
eng/apiview_reqs.txtand manually -
api.mdgenerated viaazpysdk apiview --md - Draft PR opened only when diffs exist
- PR contains only
api.mdupdates
Reactions are currently unavailable