Skip to content

Several fixes and improvements for CI#115

Merged
orionpapadakis merged 14 commits into
mainfrom
ci/fixes
May 26, 2026
Merged

Several fixes and improvements for CI#115
orionpapadakis merged 14 commits into
mainfrom
ci/fixes

Conversation

@orionpapadakis
Copy link
Copy Markdown
Collaborator

@orionpapadakis orionpapadakis commented May 12, 2026

This PR:

  • Merges integration-quarkus-langchain4j into build-and-run — single workflow with four sequential jobs (buildstandalone-inference / quarkus-integrationperf-history), eliminating duplicate TornadoVM builds from two concurrent workflows racing on the same runner
  • Fix TornadoVM rebuilding on every run — move TORNADO_ROOT to runner.tool_cache (outside workspace) so actions/checkout's git clean no longer wipes it; SHA-based sentinel skips rebuilds when upstream HEAD is unchanged
  • max-parallel: 1 on build matrix — opencl and ptx variants run sequentially, no workspace conflicts
  • Extract setup-java composite action — SDKMAN-based JDK setup deduplicated across all workflows (build-and-run, deploy-maven-central, prepare-release)
  • Extract setup-tornadovm composite action — TornadoVM clone/build/sentinel logic extracted and reused; find dist deduplication via step output
  • Extract run-inference composite action — inference invocation deduplicated across all model steps

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR focuses on improving CI reliability and maintainability by centralizing repeated workflow logic into reusable composite actions and tightening access control for the workflow-rerun command flow.

Changes:

  • Added permission-gating for /rerun PR comments to restrict who can trigger workflow reruns.
  • Replaced inline TornadoVM setup logic in workflows with a cached composite action (setup-tornadovm).
  • Replaced repeated inference + metrics/sidecar logic with a composite action (run-inference) and reduced clone depth for an external integration dependency.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
.github/workflows/rerun-workflow.yml Adds commenter permission checks and gates rerun-related steps based on authorization.
.github/workflows/integration-quarkus-langchain4j.yml Switches TornadoVM setup to the composite action; small CI improvements (shallow clone, persist APP_PID).
.github/workflows/build-and-run.yml Refactors repeated inference steps to a composite action and TornadoVM setup to a shared cached action.
.github/actions/setup-tornadovm/action.yml New composite action to clone/cache/build TornadoVM and export environment variables for subsequent steps.
.github/actions/run-inference/action.yml New composite action to run inference and generate metrics + sidecar files consistently.
Comments suppressed due to low confidence (1)

.github/workflows/rerun-workflow.yml:96

  • The workflow creates a reaction via reactions.createForIssueComment, but permissions: does not include reactions: write. Add that permission (or remove the reaction step) to avoid 403 failures at runtime.
      - name: Add reaction to comment
        if: steps.help.outputs.is_help != 'true' && steps.check_permission.outputs.authorized == 'true'
        uses: actions/github-script@v7
        with:
          script: |
            await github.rest.reactions.createForIssueComment({
              owner: context.repo.owner,
              repo: context.repo.repo,
              comment_id: context.payload.comment.id,

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread .github/workflows/rerun-workflow.yml
Comment on lines +63 to +67
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: `@${context.payload.comment.user.login} You need write permission to trigger workflow reruns.`
Comment thread .github/actions/setup-tornadovm/action.yml
- name: Resolve TORNADO_ROOT for cache path
id: paths
shell: bash
run: echo "tornado_root=$TORNADO_ROOT" >> $GITHUB_OUTPUT
Comment thread .github/actions/setup-tornadovm/action.yml Outdated
@orionpapadakis orionpapadakis marked this pull request as ready for review May 25, 2026 14:21
@orionpapadakis orionpapadakis requested a review from stratika May 25, 2026 14:24
@orionpapadakis orionpapadakis added enhancement New feature or request testing CI Improvements related to CI automation labels May 25, 2026
@stratika
Copy link
Copy Markdown
Collaborator

Thanks @orionpapadakis. LGTM, there is a test run of the pipeline here.

One note (maybe for future addition) is to provide coverage for different quantization level (f16, q8, etc.). This would be useful, in my opinion.

@orionpapadakis orionpapadakis merged commit 58d94bb into main May 26, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Improvements related to CI automation enhancement New feature or request testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants