Skip to content

Add AXIOM check gating to workflow - #34

Open
Vedant Rokad (vrokad) wants to merge 4 commits into
qualcomm-linux:mainfrom
vrokad:main
Open

Add AXIOM check gating to workflow#34
Vedant Rokad (vrokad) wants to merge 4 commits into
qualcomm-linux:mainfrom
vrokad:main

Conversation

@vrokad

@vrokad Vedant Rokad (vrokad) commented Jun 3, 2026

Copy link
Copy Markdown
Contributor
  • Add AXIOM_Check job bound to the AXIOM_CHECK environment, which sits between build and release and is auto-approved by the service account once AXIOM tests pass.
  • Make the gate opt-in per caller repo via the AXIOM_ENABLE variable: set to 'true' to enforce AXIOM_Check, unset or 'false' to skip it and fall back to the existing Production manual review only for the AXIOM disable targets.

Comment thread .github/workflows/debusine.yml

@basak-qcom Robie Basak (basak-qcom) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall this is in the shape I expect, thanks!

Is it possible to test this before landing into the main branch, please, so that we can be assured that we're not impacting Debusine CI in production until we've seen the integration working? For example, we could push this PR to a branch called enable-axiom and push a similar enable-axiom branch in one of the enabled pkg-* repositories with minor changes to .github/workflows/ in that pkg-* branch to call this enable-axiom branch instead of main. Then we could see the whole thing working end-to-end before landing it.

Should these be called Axiom, or Coral, as it's Coral that we're interacting with here?

The overall behaviour matches our plan I believe, but from the perpsective of a new developer familiar with GitHub Actions inspecting this code, this code would be quite confusing. Could you please explain concisely in comments the behaviour that would be surprising to somebody in that position? I suppose that's 1) Coral watches for this specific job by name (actually, does it any more?); 2) Coral will approve the environment deploy if Axiom reports passed; 3) the release job is intended to continue if Axiom isn't enabled.

Is this intended to apply only to the release flow, or additionally to dailies and PRs? For PRs, is there a race between the PR being filed and this new job running where the PR will appear to pass without the Coral check appearing yet? If so, maybe we should address that by explicitly adding the check in advance?

Comment thread .github/workflows/debusine.yml Outdated

AXIOM_Check:
name: AXIOM_Check
if: ${{ inputs.release && vars.AXIOM_ENABLE == '1' }}

@basak-qcom Robie Basak (basak-qcom) Jun 9, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If vars.AXIOM_ENABLE == 'true', then this won't enable Axiom. What's conventional in the GitHub Actions space to deal with this without surprises, please?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes true, It's recommended and idle way to do this is using 'true' rather 1, as GitHub variable is string, I updated it to the 'true', Is it okay with that or should we keep both 'true' and '1' so it can enable based on anyone.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine with whatever is the established convention.

Comment thread .github/workflows/debusine.yml Outdated
@vrokad
Vedant Rokad (vrokad) force-pushed the main branch 3 times, most recently from 29fc44b to 3fbe6bc Compare June 15, 2026 15:13
@vrokad

Copy link
Copy Markdown
Contributor Author

#39

Please review this PR

This I have created with the enable-axiom branch as you suggested.

@vrokad

Copy link
Copy Markdown
Contributor Author

I have tested the the Axiom and Production environment gates in below workflows with the pkg-android-platform-tools repo

Debusine Daily: https://github.com/qualcomm-linux/pkg-android-platform-tools/actions/runs/27607525489
Debusine Release: https://github.com/qualcomm-linux/pkg-android-platform-tools/actions/runs/27611242786

@vrokad Vedant Rokad (vrokad) changed the title ci: add AXIOM_Check gate between build and release Add sources JSON generation and AXIOM check gating to workflow Jun 17, 2026
@vrokad
Vedant Rokad (vrokad) force-pushed the main branch 2 times, most recently from baabd8a to 2f7fe74 Compare June 17, 2026 18:43
@vrokad Vedant Rokad (vrokad) changed the title Add sources JSON generation and AXIOM check gating to workflow Add AXIOM check gating to workflow Jun 24, 2026
@vrokad

Copy link
Copy Markdown
Contributor Author

@basak-qcom Robie Basak (basak-qcom) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good, thanks.

I'd like to see it all working end-to-end before landing though please. I was expecting to see check run results against the commit tested by Axiom. Is that side operational yet please?

Comment thread .github/workflows/debusine.yml Outdated
debusine-action/lib/generate-step-summary

AXIOM_Check:
name: AXIOM_Check

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this be just AXIOM Check as it's a user readable name that appears in the UI? The job ID can stay as AXIOM_Check of course.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes sure, I updated it.

Comment thread .github/workflows/debusine.yml Outdated

AXIOM_Check:
name: AXIOM_Check
if: ${{ inputs.release && vars.AXIOM_ENABLE == '1' }}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine with whatever is the established convention.

@github-advanced-security

Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

- Add AXIOM_Check job bound to the AXIOM_CHECK environment,
which sits between build and release and is auto-approved
by the service account once AXIOM tests pass.
- Make the gate opt-in per caller repo via the
AXIOM_ENABLE variable: set to 'true' to enforce AXIOM_Check,
unset or 'false' to skip it and fall back to the existing
Production manual review only for the AXIOM disable targets.

Signed-off-by: Vedant Rokad <vrokad@qti.qualcomm.com>
Add workflow_kind input and gate AXIOM execution using
workflow-specific enablement variables. This allows
enabling/disabling AXIOM checks per service/workflow
instead of applying a global setting.

Signed-off-by: Vedant Rokad <vrokad@qti.qualcomm.com>
@vrokad

Copy link
Copy Markdown
Contributor Author

Base Commit: 74b81f5 (AXIOM Enable Globally for all the services: As discussed earlier)
new commit: 1e8170b (AXIOM Enable based on workflow-kind for service based enablement)

Tested Workflows:

Gated: https://github.com/qualcomm-linux/pkg-android-platform-tools/actions/runs/31419788506
Skipped: https://github.com/qualcomm-linux/pkg-android-platform-tools/actions/runs/31421102364

- Add the workflow kind parameter into master copy
  for AXIOM Enablement based on service

Signed-off-by: Vedant Rokad <vrokad@qti.qualcomm.com>
Signed-off-by: Vedant Rokad <vrokad@qti.qualcomm.com>
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.

4 participants