aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Add an utility to cancel a buildPascal Terjan2024-01-012-5/+158
| | | | | | | | | | | | | | Usage: $ cancel_build 20231231211004.pterjan.duvel.1487312 *: [cancel_build] check uploads tree I: [cancel_build] check dir: /var/lib/schedbot/uploads/done I: [cancel_build] check dir: /var/lib/schedbot/uploads/todo I: [cancel_build] Failing 20231231211004.pterjan.duvel.1487312 and cleaning up done architectures I: [cancel_build] Killing process 1146007 on rabbit2 (building for arch "i586") I: [cancel_build] Killing process 2204767 on ecosse0 (building for arch "x86_64") I: [cancel_build] Killing process 3092253 on ociaa1-a (building for arch "aarch64") I: [cancel_build] Killing process 3092165 on ociaa1-b (building for arch "armv7hl")
* Fix retry delay logicPascal Terjan2023-12-131-2/+2
|
* Limit retries in case of install_deps_failurePascal Terjan2023-12-111-1/+35
| | | | | | | | | | | A new config option (backoff_delays) was added to ulri. It contains a list of delays (in seconds) between retries and default to [5*60, 30*60, 60*60, 120*60] (5m, 30m, 1h, 2h). When reaching the end of the list, we fail permanently. To never retry, set it to []. To retry forever, set it to undef.
* iurt: Use the target dir when rebuilding chrootPascal Terjan2023-12-031-25/+16
| | | | | Currently we when building a tmpdir, making a tar of it, deleting it and then untar into the target.
* iurt: Make generation of the chroot archive more atomicPascal Terjan2023-11-291-0/+8
| | | | | We may still use the wrong chroot but at least the .tar shoudl not be corrupted.
* iurt: Fix / of the chroot belonging to the user instead of rootPascal Terjan2023-11-261-10/+9
|
* Fix some forever retriesPascal Terjan2023-01-301-1/+1
| | | | | | | | | An error was not set when failing in %prep or %generate_buildrequires while trying to generate dynamic buildrequires. This causes iurt to assume it's a retriable install_deps_failure. Set the failure to build_failure when what fails is rpmbuild -br rather than installing the packages.
* ulri: Fix syntaxPascal Terjan2023-01-291-1/+1
|
* iurt: Fix detection of missing_dep on DynamicBuildRequiresPascal Terjan2023-01-201-3/+1
| | | | Currently we always get install_deps_failure which is retriable.
* iurt: Cleanup some duplicated codePascal Terjan2023-01-201-17/+14
|
* Small cleanupsPascal Terjan2023-01-201-6/+2
|
* iurt: Fix buildreqs.nosrc.rpm filename on Mageia build systemPascal Terjan2023-01-191-1/+13
|
* Increase robustness when scp fails0.8.0Pascal Terjan2023-01-192-0/+18
| | | | | Do not remove lock file and mark build as done until we copied all the files.
* iurt: Add support for DynamicBuildRequiresPascal Terjan2023-01-191-2/+62
| | | | See https://fedoraproject.org/wiki/Changes/DynamicBuildRequires
* Minor cleanupPascal Terjan2023-01-191-4/+3
| | | | No need for 2 variables with the same content.
* Fix matching bogus foobar.spec.licenseThierry Vignaud2022-09-131-1/+1
|
* Fix false positives of iurt dying on the build machinePascal Terjan2022-08-221-1/+1
| | | | | | | | | | | | | sout("foo || bar") was fetching the output of: ssh -x user@host foo || bar instead of: ssh -x user@host "foo || bar" This means we were considering the remote command to have failed when ssh to the machine to check status was failing.
* fix calling clean_chroot()Thierry Vignaud2022-06-111-1/+1
| | | | | | | The call wasn't matching the function signature thus breaking cleaning chroots. Bug introducted in commit 69e74732d254c75adc20afc25a8729ca568be832 I wonder why nobody saw it before ??
* iurt: Fix src.rpm name (mga#30344)0.7.17.1Pascal Terjan2022-04-261-1/+1
|
* ulri: Remove duplication on loading lock filePascal Terjan2022-04-261-22/+40
|
* ulri: rely on status.log to know a build completedPascal Terjan2022-04-251-1/+2
| | | | | | | | | | This will fix packages not marked as noarch but having only noarch subpackages, even if we still end up wasting resources. The only risk I see is if the noarch packages get built on all mandatory architectures first, upload starts and other architectures complete in hte middle, however this should not modify the files being uploaded, we use a temporary file and rename so it should be fine.
* Have rpmspec drop the newline directlyPascal Terjan2021-11-241-2/+1
|
* iurt: Allow generated src.rpm to change namePascal Terjan2021-11-231-1/+15
| | | | | Some packages use macros for Name and those can change based on the distro version.
* Add arch to all log filesPascal Terjan2020-12-131-2/+2
|
* Change misleading log linesPascal Terjan2020-12-041-2/+2
|
* Do not add media twicePascal Terjan2020-11-291-8/+0
|
* Always use urpmi --urpmi-rootPascal Terjan2020-11-292-65/+19
|
* Add architecture in botcmd filenamePascal Terjan2020-06-151-1/+1
|
* Move the updating of packages laterPascal Terjan2020-06-151-5/+0
| | | | | The creation of chroot is a mess with various retries, so do it as late as possible when there is no way something gets changed again.
* Revert "Move updating the chroot to the right place"Pascal Terjan2020-06-151-5/+5
| | | | | | This reverts commit fe9d5b05cada63b4aa30b71401456263a3b511f1. It actually made things worse, this code is really a maze.
* Move updating the chroot to the right placePascal Terjan2020-06-151-5/+5
|
* Update packages after creating chrootPascal Terjan2020-06-142-0/+26
| | | | | This is useful when building for updates_testing or with additional media as basesystem/urpmi/... were installed without those media.
* Unmount things when additional media failPascal Terjan2020-06-141-1/+5
|
* ulri: sort file names in mailThierry Vignaud2020-04-271-2/+2
|
* Move check_{no,}arch to a new RPM modulePascal Terjan2020-03-152-45/+55
| | | | They have nothing to do with the config and work on an RPM file.
* Delete unused optionsPascal Terjan2020-02-151-2/+0
|
* Allow building arm v5 and v7 on armv8lPascal Terjan2020-01-141-7/+5
| | | | | Also cleanup arch_comp, no need to list to say an arch is compatible with itself.
* Allow - in host when parsing lock file namePascal Terjan2020-01-091-1/+1
|
* Use setarch linux32 rather than target archPascal Terjan2019-11-091-2/+4
| | | | | | | | $ setarch --list uname26 linux32 linux64 armv7l
* Always call setarchPascal Terjan2019-11-091-4/+2
| | | | | | | It used to be called when target is i586 to allow building for i586 on x86_64. Calling it on all architectures should have no impact when the architecture is the same, and this allows to build also for 32bit arm on 64bit arm host.
* Fix uses as touch is now used in another filePascal Terjan2019-11-041-0/+1
|
* Fix syntax errorPascal Terjan2019-11-031-1/+1
|
* Create one file per architecture for .uploadPascal Terjan2019-11-032-4/+8
| | | | This is consistent with .done, .excluded, etc so allows reusing the code.
* emi: Fix bug introduce in previous commitPascal Terjan2019-11-021-8/+17
| | | | | It moved the creation of .upload too early, potentially before metadata was updated when several packages were uploaded at once.
* emi: store uploaded architectures in .uploadPascal Terjan2019-11-011-0/+9
| | | | | This allows to know which non mandatory architectures are done and will allow to surface it on the web UI.
* Revert "fix timeout message when killing for other reason"Thierry Vignaud2019-08-071-23/+5
| | | | | | | | This reverts commit 0d78ec170900df342301a5bbe44e7ca883cc0db1. Rationale: That will not work as intended b/c the message is set in the child process while it gets logged in the parent
* fix timeout message when killing for other reasonThierry Vignaud2019-07-201-5/+23
|
* Kill processes before unmounting in clean_chrootPascal Terjan2018-10-161-5/+3
|
* Ignore failures when cancelling buildsPascal Terjan2018-10-161-0/+2
| | | | | This will avoid listing other architectures as failed, and giving some confusing logs.
* remove unused parameterThierry Vignaud2018-10-152-4/+4
|