Martchus
f7272c0836
Adapt makechrootpkg invocation to change in devtools-custom
2024-03-16 22:36:00 +01:00
Martchus
4017d50a20
Fix locking when removing packages from source repository
2024-03-07 00:53:10 +01:00
Martchus
56ee1325f0
Add "AUR-only" flag for "Prepare build" action
...
This might be useful to avoid accidentally rebuilding a package with a
local/custom override withiout actually updating the custom PKGBUILD.
2024-02-11 17:40:28 +01:00
Martchus
9150d90233
Fix handling of "Use container" flag for the "Prepare build" action
2024-02-09 23:09:38 +01:00
Martchus
4e141f7a04
Avoid misleading name of lock variable
2023-12-21 20:54:16 +01:00
Martchus
5d5b673b3c
Improve updating package database when loading library dependencies
...
* Make use of `PackageUpdater` more efficient by avoiding multiple calls of
`addDepsAndProvidesFromOtherPackage`
* Fix leaving old provides in the database by splitting the update via new
`beginUpdate()` and `endUpdate()` functions
2023-12-21 20:51:38 +01:00
Martchus
0d4b6c1ad0
Fix build preparation when an empty dependency is present
2023-12-02 20:35:44 +01:00
Martchus
edd78667c5
Allow configuring retention for build actions
2023-11-23 18:49:43 +01:00
Martchus
24e2ec0136
Fix reporting an error during build preparation as such
2023-11-22 21:50:45 +01:00
Martchus
bf67d1914d
Allow using `repo-add`/`repo-remove` from container in repo management actions
2023-11-09 13:48:57 +01:00
Martchus
60a477af99
Keep setup lock while checking executables
...
In the error case we use the fields from `m_setup.building` so the lock
needs to be kept.
2023-11-09 13:46:47 +01:00
Martchus
72d1999e72
Fallback to using `updpkgsums`/`repo-add` from container for containerized builds
...
If those tools are not installed on the host but we use `makecontainerpkg`
anyways for the build we might as well use it to run these additional tools
as well.
2023-11-08 17:27:46 +01:00
Martchus
10e86c759c
Avoid running into exception when checking whether executable exists
...
When we cannot even check whether the executable exists we can just assume
it doesn't.
2023-11-08 17:26:04 +01:00
Martchus
e108c98826
Apply clang-format
2023-11-08 17:25:18 +01:00
Martchus
c31027fc7f
Pass `PKGNAME` to `makecontainerpkg` to avoid sourcing PKGBUILD again
2023-11-08 16:08:54 +01:00
Martchus
1a4b9282d2
Allow using `makecontainerpkg` in prepare action
2023-11-08 15:09:42 +01:00
Martchus
0acbc2d193
Avoid resetting updated version if the package has already been built
2023-09-04 21:20:10 +02:00
Martchus
61756023db
Fix accidentally adding an old package version to the repository
...
Ensure updated version from previous run is cleared
2023-09-04 21:06:38 +02:00
Martchus
91ee500b0a
Show amended upstream version correctly
2023-09-03 22:09:28 +02:00
Martchus
c816972a16
Avoid having to rely on `pkgver()` yielding a newer version for VCS packages
...
Bump pkgver/pkgrel of VCS packages. This should help with case (1) and
should not interfere with case (2).
(1) If the pkgver does not change after all then makepkg leaves the bumped
pkgrel untouched.
(2) If the pkgver does change then makepkg will reset the bumped pkgrel and
it is as if we haven't changed anything.
2023-09-03 14:29:04 +02:00
Martchus
524b16815a
Do basic sanity check of a package's most important fields when checking for problems
2023-06-03 18:49:02 +02:00
Martchus
1376a01570
Allow fetching official PKGBUILDs from GitLab
...
The old approach of using a local checkout does not work anymore
after the Git migration. One could use
`pkgctl repo clone --universe` to get a similar checkout but this
takes ages on my server. So let's better just download the
individual sources as needed, similar to how it is done for AUR
packages.
2023-05-28 23:43:13 +02:00
Martchus
72d449977f
Fix note about deleted build actions in cleanup action
2023-05-28 20:37:45 +02:00
Martchus
55e19d9041
Relax condition for adding `--skippgpcheck`
...
The `signed` parameter might be used like this:
```
"$pkgname::git+https://github.com/ankitects/anki#tag=${_tag}?signed "
```
So we can't rely on `.git` preceding it.
2023-04-08 19:26:46 +02:00
Martchus
cce83f1f9e
Allow considering pulling-in further dependencies unexpected
...
This allows one to review further dependencies if pulled-in automatically
during the build preparation first before conducting the build.
2023-04-08 19:10:59 +02:00
Martchus
86581ec002
Add note in cleanup action stating how many build actions have been deleted
2023-04-08 18:50:46 +02:00
Martchus
5af8de2468
Fix catching exception from `boost::filesystem` in `BuildServiceCleanup` and adapt tests
2023-04-08 18:43:58 +02:00
Martchus
87fd9bb4b1
Fix unqualified calls in `preparebuild.cpp`
2023-04-07 19:30:08 +02:00
Martchus
00edfed48b
Improve error handling in `BuildServiceCleanup`
2023-04-07 19:23:13 +02:00
Martchus
836b7da8a3
Invoke `paccache` as part of the build service cleanup
2023-04-07 19:15:16 +02:00
Martchus
08af21ddb5
Fix warnings about unqualified calls in `buildaction.cpp`
2023-04-07 17:55:13 +02:00
Martchus
e477613a8b
Implement preserving chroot for containerized builds as well
...
This keeps the container around by passing the `DEBUG´ environment variable
recognized by `makechrootpkg`.
2023-02-03 23:06:43 +01:00
Martchus
e5f4dc156c
Avoid unqualified call to `std::move`
2023-02-03 21:30:42 +01:00
Martchus
599185d3ae
Use async locks when invoking custom command
2023-01-17 23:27:36 +01:00
Martchus
80b5094659
Use async locks in repo actions
2023-01-17 22:20:10 +01:00
Martchus
bb9da06950
Use async lock to lock repo when adding package
2023-01-17 22:07:00 +01:00
Martchus
4f413e86ba
Allow to abort build action immediately while waiting for chroot locks
...
* Avoid aborted build actions from being stuck in running state while
waiting until the chroot locks can be acquired; allow aborting action
immediately instead
* Use async locks when invoking makechrootpkg and split affected function
accordingly
2023-01-17 18:40:05 +01:00
Martchus
b8f211e1d1
Make functions to invoke build async
2023-01-17 18:40:05 +01:00
Martchus
218e1f6b17
Add simple cleanup of old build actions
2022-11-24 21:33:42 +01:00
Martchus
962dd0088e
Fix computing source package name
...
The `packageName` (key in build preparation) might not actually be
`pkgbase` when rebuilding a binary package and `pkgbase` changes compared
to what it was in the before. Then `packageName` is still set to the old
`pkgbase` and we need to use the name from the actual source info (which is
the name `pkgbase` value).
2022-11-13 22:09:44 +01:00
Martchus
a205ffae38
Fix adding last package of current batch already to staging repository
2022-09-20 23:00:36 +02:00
Martchus
aece080986
Pass sudo password and GPG passphrase from encrypted file
...
Not tested yet; so far just an idea to make everything at least a little
more secure
2022-07-25 21:48:24 +02:00
Martchus
255da5b091
Allow passing secrets to build action
2022-07-11 23:33:28 +02:00
Martchus
1e7e604917
Fix skipping package build due to failed dependency
...
Skip package as expected when a dependency failed that was attempted to be
built as last package of the previous batch (and building as far as
possible is enabled).
2022-07-01 19:27:39 +02:00
Martchus
6c1782ba42
Apply clang-format
2022-06-28 16:08:53 +02:00
Martchus
0e3be7ce69
Fix conduct build action from getting stuck when configuring chroot fails
...
by moving the creation of the process session below configuring the chroot
2022-06-27 12:49:47 +02:00
Martchus
0a536a992a
Fix missing include for std::ifstream
2022-06-15 23:31:14 +02:00
Martchus
3b150428ae
Allow building with `makecontainerpkg`
2022-06-12 20:42:14 +02:00
Martchus
c155176098
Fix missing build date in package search
...
* Avoid using buildDate of PackageInfo in favor of the same field in
PackageBase
* PackageInfo::buildDate should be removed on the next breaking change
* Do not really use the deprecated attribute because it is still used by
(de)serialization code until it is removed for good
2022-06-08 22:44:58 +02:00
Martchus
55c7c62c7c
Speed up returning build actions table by avoiding deserializing whole obj
2022-05-31 20:54:02 +02:00