Fix/ci - #6
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 86895da223
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| pull_request: | ||
| branches: | ||
| - master |
There was a problem hiding this comment.
Restore CI for PRs targeting main
This repository has a main branch and the previous workflow accepted PRs for both master and main; after this change the only remaining trigger is pull_request targeting master, with the push trigger also removed. For contributors opening PRs against main, GitHub will not start this build at all, so changes can merge without the Lazarus CI coverage. Please add main back to the branch filter or restore an equivalent trigger.
Useful? React with 👍 / 👎.
| updates: | ||
| - package-ecosystem: "github-actions" | ||
| directory: "/" | ||
| directory: ".github" |
There was a problem hiding this comment.
Point Dependabot at the workflow root
For the github-actions ecosystem, GitHub's Dependabot options reference says to use directory: "/" so it searches /.github/workflows and the root action files (https://docs.github.com/en/code-security/reference/supply-chain-security/dependabot-options-reference#directories-or-directory). Changing this to .github means Dependabot no longer scans the workflow actions in this repo, so future action updates/security fixes will be missed; please keep the directory as /.
Useful? React with 👍 / 👎.
| if not RunCommand('lazbuild', | ||
| ['--build-all', '--recursive', '--no-write-project', Path], Result, [poStderrToOutPut, poWaitOnExit]) |
There was a problem hiding this comment.
The deleted scripts built each project with --build-mode=release, but this replacement only passes --build-all; lazbuild treats --build-all as the FPC clean/rebuild flag and handles --build-mode as a separate override (https://gitlab.com/freepascal.org/lazarus/lazarus/-/raw/main/ide/lazbuild.lpr). Since src/tournament.lpi has a distinct Release mode with different output, optimization, and smart-link settings, PRs can now pass CI while the release configuration is broken. Please pass --build-mode=release (or the platform-specific release modes) when building the .lpi files.
Useful? React with 👍 / 👎.
| if not RunCommand('lazbuild', | ||
| ['--build-all', '--recursive', '--no-write-project', Path], Result, [poStderrToOutPut, poWaitOnExit]) |
There was a problem hiding this comment.
Capture lazbuild's exit status
This RunCommand overload only tells us whether the process was started; Free Pascal documents the child exit code as a separate ExitStatus value on the overload that exposes it (https://www.freepascal.org/docs-html/fcl/process/runcommandindir.html). When lazbuild starts but returns non-zero for a compile error, this code still enters the success branch and, for the application project, never increments ExitCode, so CI can report success for a failed build. Please use the overload that captures exit status and fail when it is non-zero.
Useful? React with 👍 / 👎.
Hello @Al-Muhandis
I've fixed the CI
Best regards
Artem