rusackas opened a new pull request, #42507:
URL: https://github.com/apache/superset/pull/42507

   ### SUMMARY
   Supersedes #42505 (retargeted to `master` directly -- this doesn't touch any 
of the same lines as #42498, so it doesn't need to wait on it).
   
   [Kesin11/actions-timeline](https://github.com/Kesin11/actions-timeline) 
renders a Gantt chart (mermaid diagram) of every job and step's duration 
directly in the run summary page. Arguably this should have been step zero 
before optimizing CI -- instead of guessing where the minutes go, this makes it 
visible.
   
   Added to the 15 substantive CI workflows: the 13 `setup-backend` consumers 
plus `superset-frontend.yml` and `docker.yml`, the other two heaviest CI paths. 
Skipped the trivial bot/label/notification workflows (labeler, 
welcome-new-users, no-hold-label, etc.) that run in seconds and have nothing 
worth visualizing.
   
   **Placement:**
   - Single-job workflows (or a linear chain with one heavy job at the end): 
the step goes first, before checkout. It's a post-action -- the actual timeline 
rendering happens in its post-processing hook, and registering it first means 
that hook runs *last*, after every other step's own cleanup, capturing the 
whole job.
   - Workflows with multiple independent parallel jobs (e.g. 
`test-mysql`/`test-postgres`/`test-sqlite`, or the frontend's 6-job fan-out): 
added one dedicated `actions-timeline` terminal job (`needs: [...]`, `if: 
always()`) instead of duplicating the step into every parallel job. The action 
fetches every job of the *entire run* from the GitHub API regardless of which 
job it executes in, so a single copy that waits for all siblings to finish 
produces one complete, authoritative timeline -- N copies dropped into N 
parallel jobs would each render an incomplete gantt racing against their 
still-running siblings.
   
   `expand-composite-actions: true` is set everywhere, so `setup-backend`'s 
internal steps show up as their own bars instead of one opaque blob once #42498 
lands too.
   
   `actions: read` permission is added wherever the new step needs it to read 
job/step timing from the Actions API -- to the workflow's top-level 
`permissions:` block when the job has no override, or directly into the job's 
own `permissions:` block when one already exists (job-level permissions replace 
the workflow-level ones rather than merging with them).
   
   ### TESTING INSTRUCTIONS
   - `pre-commit run` (`zizmor` GHA security audit) and `npx 
@action-validator/cli` (the schema check `github-action-validator.yml` runs in 
CI) both pass on all 15 touched files.
   - CI on this PR is itself the test: every touched workflow should produce a 
Gantt-chart summary on its run page.
   
   ### ADDITIONAL INFORMATION
   - [ ] Has associated issue:
   - [ ] Required feature flags:
   - [ ] Changes UI
   - [ ] Includes DB Migration (follow approval process in 
[SIP-59](https://github.com/apache/superset/issues/13351))
     - [ ] Migration is atomic, supports rollback & is backwards-compatible
     - [ ] Confirm DB migration upgrade and downgrade tested
     - [ ] Runtime estimates and downtime expectations provided
   - [ ] Introduces new feature or API
   - [ ] Removes existing feature or API


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to