juspay / omnix

đźš§ A Nix companion to improve developer experience
https://omnix.page
GNU Affero General Public License v3.0
92 stars 6 forks source link

refactor(ci): Separate jobs into individual files #203

Closed shivaraj-bh closed 2 months ago

shivaraj-bh commented 2 months ago

on: workflow_run only works on default branch, see: https://github.com/orgs/community/discussions/72097#discussioncomment-7376117

I will try reusable workflow: https://docs.github.com/en/actions/using-workflows/reusing-workflows#creating-a-reusable-workflow

shivaraj-bh commented 2 months ago

@srid what is the "Actions permissions” in the settings?

srid commented 2 months ago

You are referring to this?

image

It is already enabled:

image
srid commented 2 months ago

@shivaraj-bh You can use the gh cli to view more diagnostic info.

Running gh run view --job 28475395098 produces:


X breakdown-ci CI juspay/nix-browser#203 · 10288826942
Triggered via pull_request about 10 minutes ago

X trigger-static-binary-check in 5s (ID 28475395098)
  âś“ Set up job
  âś“ Run actions/checkout@v4
  X Run static binary workflow
  âś“ Post Run actions/checkout@v4
  âś“ Complete job

ANNOTATIONS
X /home/runner/work/omnix/omnix/./.github/workflows/static-binary-check/action.yaml (Line: 7, Col: 14): Unrecognized named-value: 'matrix'. Located at position 1 within expression: matrix.system
trigger-static-binary-check: .github#1

X /home/runner/work/omnix/omnix/./.github/workflows/static-binary-check/action.yaml (Line: 15, Col: 17): Unrecognized named-value: 'matrix'. Located at position 1 within expression: matrix.system == 'ubuntu-latest' && 'x86_64-linux' || matrix.system == 'macos-latest' && 'aarch64-darwin' || matrix.system
trigger-static-binary-check: .github#2

X Failed to load /home/runner/work/omnix/omnix/./.github/workflows/static-binary-check/action.yaml
trigger-static-binary-check: .github#3

To see the logs for the failed steps, try: gh run view --log-failed --job=28475395098
View this run on GitHub: https://github.com/juspay/omnix/actions/runs/10288826942
shivaraj-bh commented 2 months ago

I can’t use matrix inside a reusable workflow, but apparently I can do https://docs.github.com/en/actions/using-workflows/reusing-workflows#using-a-matrix-strategy-with-a-reusable-workflow, but that failed as well: https://github.com/juspay/omnix/actions/runs/10288994469/job/28475862141. The linked action runs https://github.com/juspay/omnix/pull/203/commits/d1608c671d69ddc3d22d4b2150f096fd1701a943

srid commented 2 months ago

Do we need matrix builds for static-binary-check at all?

I'd imagine you can put runs-on name (eg: ubuntu-latest) as part of the uploaded artifact; and the consuming workflow can then just directly use that in its runs-on?

srid commented 2 months ago

Anyway, let's not worry too much about doing this (especially as #199 should simplify our workflow).

At one point, I'm thinking we could just generate the singular workflow YAML from some saner DSL.