Skip to content

Ci improvements backport 2.9#4024

Draft
hdiethelm wants to merge 13 commits into
LinuxCNC:2.9from
hdiethelm:ci_improvements_2.9
Draft

Ci improvements backport 2.9#4024
hdiethelm wants to merge 13 commits into
LinuxCNC:2.9from
hdiethelm:ci_improvements_2.9

Conversation

@hdiethelm
Copy link
Copy Markdown
Contributor

If you think this is useful, I will do spot checks on created Debian packages and then it is ready to merge.

It was quite easy to cherry-pick. Let's see if the CI passes. When merging 2.9 to master, care has to be taken that no CI changes are merged.

hdiethelm added 10 commits May 14, 2026 18:15
It fails sometimes and the build time doesn't increase.
If it fails, the error is:
ERROR: ld.so: object 'libeatmydata.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.

Merge a few improvements from master.
Retry should not have an effect: Either you are rate limited and it
fails anyway or it succeeds.
No --quiet so you see what is going on.
Ubuntu image from gitlab should be reasonable up to date.
No need to remove firefox any more.
In debian containers, there is only a minimal package set, so we can
upgrade. Especially for sid, the container is not always up to date.
cppcheck is now in test section.
DEBIAN_FRONTEND: noninteractive can be defined once on top.
set -e is not needed in CI, it stops anyway on any error.
Linuxcnc repo is added for everything except sid / bookworm / trixie
which is all what we build, so it can be removed.
All actions updated to latest release.
Checkout: Submodules not needed / fetch-depth 1 is fine for all targets
not needing history.
More steps help debugging and tuning ci.
Fetch not needed, checkout fetches already.
This argument limited the amount of CPU's to 2. Without, we have all 4
CPU's reducing build time.
Less packages -> faster build. Recommends should not be needed.
Scripts are easier to test locally than if the shell code is in the
ci.yml. They are also reusable.
travis-install-build-deps.sh replaced by one script, only used in CI.
@BsAtHome
Copy link
Copy Markdown
Contributor

And,... crash and burn. Typical... ;-)

@hdiethelm
Copy link
Copy Markdown
Contributor Author

And,... crash and burn. Typical... ;-)

Some gitignores are missing, failed as it should... ;-)

@hdiethelm
Copy link
Copy Markdown
Contributor Author

Ah, cpp / shellcheck don't exist in 2.9... :-D Other job on 2.9:
https://github.com/LinuxCNC/linuxcnc/actions/runs/25679989364/job/75388517378


Run scripts/shellcheck.sh
/home/runner/work/_temp/39747ac5-1c7a-439a-a3f8-6dda3c7f7c3b.sh: line 1: scripts/shellcheck.sh: No such file or directory
Error: Process completed with exit code 127.

Anyway, how long until 2.10 is released?

@BsAtHome
Copy link
Copy Markdown
Contributor

Shellcheck and cppcheck, yes, they were added and a lot of problems got solved that way around.

2.10 is still some time in the future. Working hard on fixing the hal type problem. That should go in to eliminate the 32/64 bit differentiation. Then we're probably mostly done for release.

@hdiethelm
Copy link
Copy Markdown
Contributor Author

Do you think this back-port is useful? Doc is still failing. I would have to investigate...

@BsAtHome
Copy link
Copy Markdown
Contributor

The backport is useful. The CI on 2.9 takes 55 minutes or so, where master is down to 21..23 minutes. That would be an improvement.

@hdiethelm hdiethelm force-pushed the ci_improvements_2.9 branch from c9f9836 to 5a77718 Compare May 15, 2026 12:43
@hdiethelm
Copy link
Copy Markdown
Contributor Author

So, this one should hopefully pass. The last one had a timeout but indep is now fine.
The issue was the po4a installed from linuxcnc repo which is needed for bullseye. Is bullseye even needed?

@hdiethelm
Copy link
Copy Markdown
Contributor Author

So, passed. 52min down to 30min. It seams the dock build is less performant on 2.9.

@BsAtHome
Copy link
Copy Markdown
Contributor

I don't think you need to do the cppcheck/shellcheck part at all. The list of errors, warnings and other problems is so long... It was fixed in master and I'm not going to backport that effort. You can just remove the CI for it IMO (never worked anyway).

@BsAtHome
Copy link
Copy Markdown
Contributor

Is bullseye even needed?

It is supported for 2.9, so yes.

@hdiethelm hdiethelm force-pushed the ci_improvements_2.9 branch from 2f59147 to 395e9ad Compare May 15, 2026 14:18
@hdiethelm
Copy link
Copy Markdown
Contributor Author

I don't think you need to do the cppcheck/shellcheck part at all. The list of errors, warnings and other problems is so long... It was fixed in master and I'm not going to backport that effort. You can just remove the CI for it IMO (never worked anyway).

Ok, so I commented out the target.

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.

2 participants