Fix/ci workflow#463
Closed
Harxhit wants to merge 12 commits into
Closed
Conversation
CI Results — ✅ CI completed🖥️ Backend (⏭️ skipped)
📱 Mobile (⏭️ skipped)
🌐 Web (⏭️ skipped)
🕐 Last updated: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Runs targeted checks only on files changed in a pull request — nothing untouched is re-tested.
Workflow
Jobs
detect-changesCalls
.github/scripts/ciScript.jsviaactions/github-script.Outputs:
backendChangedtrueif anyapps/backendfile changedmobileChangedtrueif anyapps/mobilefile changedwebChangedtrueif anyapps/webfile changedbackendFilesapps/backend/prefix)mobileFileswebFilesbackendTestFilesmobileTestFilesbackend-ciRuns when
backendChanged == 'true'.pnpm eslint <changed files>pnpm test --passWithNoTests <derived test files>pnpm typecheckweb-ciRuns when
webChanged == 'true'.pnpm checkpnpm buildmobile-ciRuns when
mobileChanged == 'true'.pnpm eslint <changed files>pnpm test --passWithNoTests <derived test files>comment-resultsAlways runs. Posts or updates a single comment on the PR with a results table.
If lint failed, a collapsible block shows the exact file paths and error messages.
Scripts
ciScript.jsReads the PR's changed files from the GitHub API and categorises them by app.
Test file derivation:
For each changed source file
src/routes/cards.tsit looks for a corresponding test atsrc/__tests__/cards.test.ts. If the changed file is already a test file it is used as-is. No filesystem access — path is derived by convention.commentResults.jsBuilds and posts (or updates) the CI results comment. Accepts per-job and per-step
statuses plus raw lint output. Lint errors are shown in a collapsible block so the
comment stays readable when there are no failures.