Replies: 1 comment
-
|
Hi, I ended up solving it with rsync. Here’s the approach: The pipeline installs @ibm/ibmi-ci and @ibm/itest on the runner so it can connect to IBM i and run builds/tests(to do). build_ibmi prepares two remote folders under /home/$IBMI_USER/builds/ics_${CI_COMMIT_REF_SLUG}: stage/ receives the fresh sources from GitLab (ici --push). work/ keeps the previous build state that Bob uses for incremental builds. A remote rsync -rlp --checksum --delete copies only files that actually changed from stage/ to work/, preserving permissions and avoiding noisy artifacts (*.evfevent, .logs/). Bob (makei build) runs inside work/, so it only rebuilds the impacted components (timestamps/content reflect the last effective change, not the upload time). Best regards, Olivier. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
I’m setting up Bob in our GitLab CI/CD and I’d like your advice on enabling incremental builds.
Here is our current .gitlab-ci.yml (simplified below). It works, but whenever I merge a branch into main, Bob rebuilds the entire repository instead of only the changed sources and their dependencies. Our legacy codebase is large (~13,000 members), so full rebuilds are costly.
Could you point me to the correct configuration so that Bob rebuilds only what changed plus the transitive dependencies?
Bob version: 2.4.31
CI/CD logs are attached below for reference.
Thanks a lot for your help!
Best regards,
Olivier
CI/CD log
Beta Was this translation helpful? Give feedback.
All reactions