Martchus
17c5f50440
Do not exit process if config values are invalid
...
This is not a good idea when re-reading the config after startup.
2021-07-07 19:08:47 +02:00
Martchus
49aebdd8a5
Fix typos found via `codespell --skip .git -w`
2021-07-03 19:59:57 +02:00
Martchus
8b70cc5f8e
Clear added/removed provides from previous builds
2021-06-22 00:02:41 +02:00
Martchus
f685fddd20
Add `.pid`-equivalent for Boost.Asio's Windows-executor
2021-06-22 00:01:55 +02:00
Martchus
0a55412625
Remove unused #include
2021-06-21 23:58:34 +02:00
Martchus
d9203689a0
Fix param for PrepareBuildFlags::ResetChrootSettings
2021-06-04 16:47:24 +02:00
Martchus
3a797bc8b6
Adapt test to fixed behavior of splitString*() to preserve last empty part
2021-05-16 19:43:16 +02:00
Martchus
9359004a10
Allow resetting chroot settings as well when preparing build
2021-05-16 16:49:09 +02:00
Martchus
efbcef5e6e
Fix error handling when makechrootpkg can not be invoked
2021-05-16 13:49:57 +02:00
Martchus
b9c7f05ef1
Add missing include for condition_variable
2021-05-15 21:04:21 +02:00
Martchus
05ff6cd00f
Do not set packages in conduct build actions when creating it form task
...
Usually this doesn't make sense because we want to build all packages which
were determined in the previous prepare action. When specifying the
packages again in the conduct build action we'd skip packages which are
pulled into the build as dependencies which is normally not desired.
2021-05-01 23:28:30 +02:00
Martchus
6101eaa6b6
Ensure staging flag is not unset
2021-04-28 22:19:10 +02:00
Martchus
a96ba707cd
Populate list of packages to be re-built also for removed libraries
2021-04-28 21:58:33 +02:00
Martchus
12050364c8
Handle signature cleanup alongside related package even if package symlink broken
2021-04-27 17:06:47 +02:00
Martchus
e4755a283b
Prevent running out of memory when signing split packages
...
* Launch only up to 4 gpg processes at a time
* Prevent `gpg: signing failed: Nicht genügend Hauptspeicher verfügbar`
2021-04-17 17:30:18 +02:00
Martchus
56ad086c0c
Start the next job only if all start after actions were successful
2021-04-16 14:06:18 +02:00
Martchus
8e904ebfbf
Fix starting first build action
...
* Prevent endless recursion
* Consider starting parallel sequence also as having started an action to
prevent starting also actions which should only start after that parallel
sequence
2021-04-16 14:05:25 +02:00
Martchus
80c99cb179
Support receiving a body as well when handling chunks individually
2021-04-14 17:56:29 +02:00
Martchus
da9ddc2079
Apply clang-format
2021-04-14 17:56:29 +02:00
Martchus
e47edcc09e
Allow live-streaming via CLI
2021-04-12 14:03:47 +02:00
Martchus
338674a9e6
Fix returning output when no offset present
2021-04-05 21:11:13 +02:00
Martchus
7ab50a121f
Split routes.cpp
2021-04-05 20:02:00 +02:00
Martchus
b73bee87b5
Add test for posting build actions from pre-defined build task
2021-04-05 19:49:04 +02:00
Martchus
ff1e955bde
Consider concurrent flag when starting build actions from task
...
This allows concurrent build actions within the same task.
2021-04-05 12:10:42 +02:00
Martchus
7f0ec081c6
Allow specifying build tasks with more complicated build actions
...
The new data structures (e.g. concurrent flag) aren't actually used yet.
2021-04-02 00:14:00 +02:00
Martchus
6f2c6cabc2
cli: Add more build action operations
2021-03-27 21:37:28 +01:00
Martchus
bfbde3f957
Refactor client code
2021-03-27 19:55:24 +01:00
Martchus
fa969270c1
Fix warnings
2021-03-22 15:08:41 +01:00
Martchus
ac7f38e8fa
Do not access moved-from object in CleanRepository::run()
2021-03-16 15:36:57 +01:00
Martchus
9581716d8b
Delete signature in the src repo when moving package
2021-03-16 15:16:03 +01:00
Martchus
307322ab11
Handle signatures when cleaning up repository
2021-03-15 19:22:28 +01:00
Martchus
1c75e8f957
Allow signing packages manually after the build
...
Simply adding `--sign` to the `makepkg` flags doesn't work because it would
require setting up GPG within the chroot environment (of `makechrootpkg`).
When debugging it is anyways annoying that `makepkg` sends the `gpg` output
to `/dev/null`. This way the logs are preserved.
2021-03-14 21:53:51 +01:00
Martchus
45bf4fa234
Handle signature file when adding/removing/moving/checking/cleaning packages
2021-03-14 01:53:40 +01:00
Martchus
94b39f55dc
Lock working copy directory as well (as root directory)
2021-03-06 17:08:04 +01:00
Martchus
29c0741984
Allow registration of multiple data handlers
2021-03-06 16:44:42 +01:00
Martchus
cbfa8d8298
Use locks when checking/cleaning repository
2021-03-05 23:11:48 +01:00
Martchus
556a749362
Improve lock-related code in conductbuild.cpp
2021-03-02 18:30:40 +01:00
Martchus
4416922397
Fix clearing locks
2021-03-02 18:30:15 +01:00
Martchus
f147dc3179
Fix locks for global resources by implementing a mutex not tied to a thread
...
* Can not use a normal mutex because we don't want to tie the resources to
a specific thread (and instead e.g. to a build action which might not be
executed by a single thread)
* A semaphore would do that but libstdc++ only supports it as of GCC 11 and
besides it wouldn't distinguish between shared and exclusive locking
2021-02-26 01:39:21 +01:00
Martchus
930d449333
Fix handling locks in ConductBuild
2021-02-25 23:20:07 +01:00
Martchus
0760860c6d
Log lock acquisitions/releases
2021-02-25 22:12:56 +01:00
Martchus
aae5bf81f3
Allow specifying locks when executing custom command
2021-02-23 20:57:07 +01:00
Martchus
b7f27cb0a0
Use locks to prevent multiple actions accessing the same db files and chroot dirs
2021-02-22 23:44:06 +01:00
Martchus
bc993f1d78
Add locking system so build actions can acquire named locks
2021-02-20 23:25:31 +01:00
Martchus
120fbf993b
Fix param for ignoring dependencies
2021-02-20 12:25:08 +01:00
Martchus
046f963f4b
Improve error handling when parsing config, fix specifying IP address
2021-02-18 15:21:05 +01:00
Martchus
f040418bdd
Avoid checking for failed dependencies when processing the last package of batch
2021-02-13 12:54:01 +01:00
Martchus
97001740e2
Do enable staging in the current batch when processing the very first package
...
Likely not really relevant because the function should only be called when
processing the 2nd or further packages. However, this way it seems a little
bit less error prone.
2021-02-13 12:52:54 +01:00
Martchus
b556c39cd7
Skip the current package when checking for failed dependencies
...
We usually wouldn't expect a package to depend on itself but the different
packages build as part of one split-package might do.
2021-02-13 12:30:13 +01:00
Martchus
3fe15fb081
Add missing newline when logging failed makechrootpkg invocation
2021-02-13 12:28:42 +01:00