]>
git.ipfire.org Git - people/ms/pakfire.git/log
Michael Tremer [Sun, 29 Dec 2024 18:29:34 +0000 (18:29 +0000)]
stripper: Implement copying sources
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 18:27:31 +0000 (18:27 +0000)]
FHS: Permit debug sources
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 17:42:30 +0000 (17:42 +0000)]
filelist: Actually sort when adding files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 17:42:02 +0000 (17:42 +0000)]
filelist: Drop the sort function again
The filelist was intended to be sorted all the time.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 17:09:38 +0000 (17:09 +0000)]
filelist: Fix return code when we run out of buffer space
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 17:02:47 +0000 (17:02 +0000)]
filelist: Don't overwrite r when using a progress bar
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 16:41:18 +0000 (16:41 +0000)]
stripper: Run the stripping inside the jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 16:40:54 +0000 (16:40 +0000)]
stripper: Keep a reference to the jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 16:39:07 +0000 (16:39 +0000)]
file: Fix path when opening a file inside the jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 16:38:18 +0000 (16:38 +0000)]
ctx: Set a flag when we are running inside the jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 16:20:11 +0000 (16:20 +0000)]
jail: Change callback signature to include the context instead the inaccessible jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 16:15:03 +0000 (16:15 +0000)]
jail: Add a function to call a custom callback inside the jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 15:49:21 +0000 (15:49 +0000)]
build: Pass the environment to the interactive shell
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 15:45:31 +0000 (15:45 +0000)]
jail: Rename pakfire_jail_exec to pakfire_jail_exec_command
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 15:42:20 +0000 (15:42 +0000)]
env: Declare the struct before importing anything
This silences a compiler warning.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 15:42:11 +0000 (15:42 +0000)]
tests: Add tests for env
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 15:15:37 +0000 (15:15 +0000)]
jail: Merge the basic environment with the custom environment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 15:10:07 +0000 (15:10 +0000)]
build: Simplify reading the parser environment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 14:59:17 +0000 (14:59 +0000)]
jail: Move the environment into an extra object
This allows us to pass a custom environment to each command that we are
running. This helps us to keep the environment a lot cleaner.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 13:02:27 +0000 (13:02 +0000)]
jail: Add struct to pass more stuff to commands
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 29 Dec 2024 12:52:10 +0000 (12:52 +0000)]
jail: Create a callback function that is called in the child process
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 25 Dec 2024 13:18:14 +0000 (13:18 +0000)]
Revert "file: Remove ELF detection with libelf"
This reverts commit
65fcf2eb3c4fceb81887bd969e68ceae8613e26e .
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 25 Dec 2024 13:02:58 +0000 (13:02 +0000)]
Revert "stripper: Throw this away"
This reverts commit
76774bf62a622da82ca589519331371c71b87bf1 .
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Wed, 25 Dec 2024 12:55:58 +0000 (12:55 +0000)]
tests: Add a test to check if the log buffer limit works
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 15:18:09 +0000 (15:18 +0000)]
build: Check for matching files in a loop
When sending the filelist to scripts, we require the event loop to call
us again and again. This seems to cause a deadlock situation and we now
rather search for matching files in a loop until we have found a result
(or not).
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 14:40:52 +0000 (14:40 +0000)]
packager: Sort files before writing the archive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 13:44:15 +0000 (13:44 +0000)]
tests: log buffer: Test invalid function calls
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 13:43:58 +0000 (13:43 +0000)]
log buffer: Check inputs on dequeue
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 13:39:59 +0000 (13:39 +0000)]
log buffer: Since length is signed, we cannot assign -1
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 13:25:41 +0000 (13:25 +0000)]
tests: Add simple tests for the log buffer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 24 Dec 2024 13:24:38 +0000 (13:24 +0000)]
log buffer: Reset pointers when there is no more data
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 16 Dec 2024 18:30:37 +0000 (18:30 +0000)]
tests: cgroups: Fix return code checks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 16 Dec 2024 18:30:05 +0000 (18:30 +0000)]
tests: Add check for expected return codes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 16 Dec 2024 18:24:08 +0000 (18:24 +0000)]
jail: Cleanup if we cannot create an eventfd
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 16 Dec 2024 18:11:37 +0000 (18:11 +0000)]
jail: Report correct error if clone3() failed
We should also clean up.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 17:07:54 +0000 (17:07 +0000)]
cgroups: Recursively delete cgroups
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 16:27:47 +0000 (16:27 +0000)]
tests: string: Check if strings contain whitespace
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 16:22:37 +0000 (16:22 +0000)]
jail: Return the correct exit code when a process has dumped
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 16:18:38 +0000 (16:18 +0000)]
build: Ignore if cgroup limits could not be applied
This should ideally not happen in a real environment, but sadly is a
restriction we have in Jenkins when we are running the tests.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 16:13:57 +0000 (16:13 +0000)]
build: Move cgroup accounting here
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 16:07:20 +0000 (16:07 +0000)]
jail: Log the status code when a process exits abnormally
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:55:47 +0000 (15:55 +0000)]
cgroups: The static analyzer does not seem to understand how return things
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:44:45 +0000 (15:44 +0000)]
path: Make the static analyzer happy again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:39:23 +0000 (15:39 +0000)]
xfer: Don't call fileno() with NULL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:36:12 +0000 (15:36 +0000)]
archive: Don't leak fd if archive could not be opened
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:22:24 +0000 (15:22 +0000)]
jail: Enable accouting in the parent group
We cannot enable any of this in the child group because then we cannot
fork anything into it any more.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:06:57 +0000 (15:06 +0000)]
cgroup: Remove unused function to open root
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:06:19 +0000 (15:06 +0000)]
build: Fail properly when we could not open a cgroup
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 15:06:09 +0000 (15:06 +0000)]
cgroups: Implement recursion again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:39:19 +0000 (14:39 +0000)]
jail: Check if we received a valid file descriptor for the cgroup
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:37:06 +0000 (14:37 +0000)]
cgroups: Don't automatically kill when destroying a cgroup
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:32:01 +0000 (14:32 +0000)]
cgroups: Always log the entire path
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:30:18 +0000 (14:30 +0000)]
cgroups: Use the correct function to retrieve the path
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:27:35 +0000 (14:27 +0000)]
jenkins: Enable coverage tests again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:25:58 +0000 (14:25 +0000)]
cgroups: Log the entire path if we encountered a writing error
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:25:44 +0000 (14:25 +0000)]
jail: Don't fail if we cannot enable accounting
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:20:08 +0000 (14:20 +0000)]
cgroups: Don't try reading memory stats when the memory controller is not enabled
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:11:58 +0000 (14:11 +0000)]
cgroups: Fix error codes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 14:09:29 +0000 (14:09 +0000)]
cgroups: Close the FD after we removed the cgroup
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:54:20 +0000 (13:54 +0000)]
cgroups: Refactor the code that creates a cgroup
The previous solution seemed to be very complicated, but this one will
likely have an extra syscall in some cases.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:45:13 +0000 (13:45 +0000)]
tests: os: Don't fail if no VERSION is set in /etc/os-release
ArchLinux does not seem to use that field.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:41:17 +0000 (13:41 +0000)]
cgroups: Use the child function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:39:42 +0000 (13:39 +0000)]
cgroups: Bring back convenience function to create a child group
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:31:21 +0000 (13:31 +0000)]
cgroups: Bring back a function that enables accounting
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:26:46 +0000 (13:26 +0000)]
cgroups: Automatically enable necessary controllers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:23:40 +0000 (13:23 +0000)]
cgroups: Remove function to recursively create cgroups
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:22:12 +0000 (13:22 +0000)]
cgroups: Don't try to enable already enabled controllers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 13:21:06 +0000 (13:21 +0000)]
cgroups: Keep bitmap of enabled controllers
This helps us to perform fewer operations when we create a cgroup.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 14 Dec 2024 12:32:55 +0000 (12:32 +0000)]
tests: Fix signedness of an integer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 Dec 2024 15:27:26 +0000 (15:27 +0000)]
cgroups: Store the path to the cgroup
This is only used for debugging.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 Dec 2024 15:26:36 +0000 (15:26 +0000)]
path: Allow parsing empty paths
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 Dec 2024 15:24:06 +0000 (15:24 +0000)]
tests: Fix jail tests after changing the cgroups API
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 10 Dec 2024 15:14:07 +0000 (15:14 +0000)]
cgroups: Try to create some recursive dependency chain
This should help us to operate on cgroups since every group now has a
reference to its parent group.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 17:23:12 +0000 (17:23 +0000)]
cgroups: Don't store the path to the root
We should not need this now that we always hold the parent groups.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 17:20:07 +0000 (17:20 +0000)]
cgroups: Keep a reference to the parent group
Since so many operations are recursive, this might be easier to handle.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 17:16:00 +0000 (17:16 +0000)]
tests: cgroup: Update function calls
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 16:39:51 +0000 (16:39 +0000)]
daemon: Create a cgroup for the daemon
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 16:38:06 +0000 (16:38 +0000)]
cgroups: Rename pakfire_cgroup_open to *_create
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 16:29:06 +0000 (16:29 +0000)]
cgroups: Implement recursively enabling controllers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 16:17:46 +0000 (16:17 +0000)]
cgroups: Remove the overly complicated handling of controllers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 16:02:46 +0000 (16:02 +0000)]
cgroups: Rely on support for cgroup.kill
This should be available in every kernel that we support now.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 9 Dec 2024 15:58:53 +0000 (15:58 +0000)]
cgroups: Minor code cleanups
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 7 Dec 2024 11:40:05 +0000 (11:40 +0000)]
jenkins: Build Debian packages only when we are in the master branch
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 6 Dec 2024 10:45:02 +0000 (10:45 +0000)]
jenkins: On bookworm, make sure we have the correct version of cURL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 6 Dec 2024 10:39:53 +0000 (10:39 +0000)]
jenkins: Don't try to cleanup the workspace
This seems to fail because Jenkins doesn't know on which host to run
this.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 18:41:43 +0000 (18:41 +0000)]
jenkins: Scan for packages in the right place
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 17:12:20 +0000 (17:12 +0000)]
jenkins: Add back --recursive to rsync
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 17:04:18 +0000 (17:04 +0000)]
jenkins: Don't try to --archive because we don't have permissions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 16:48:06 +0000 (16:48 +0000)]
jenkins: Cleanup the workspace before mastering the repository
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 16:07:50 +0000 (16:07 +0000)]
jenkins: Add principal name with kinit
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 16:03:45 +0000 (16:03 +0000)]
jenkins: Try to cleanup workspace after Debian repo
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 15:29:11 +0000 (15:29 +0000)]
jenkins: Publish files to the master mirror
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 11:31:49 +0000 (11:31 +0000)]
jenkins: Try again to get a Kerberos ticket
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 11:09:38 +0000 (11:09 +0000)]
jenkins: Export the public key
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 10:57:26 +0000 (10:57 +0000)]
jenkins: Use single quotes when handling a credentials variable
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 10:53:55 +0000 (10:53 +0000)]
jenkins: Try signing the Release files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 10:44:53 +0000 (10:44 +0000)]
jenkins: Skip checking our the source when mastering the repository
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 10:43:28 +0000 (10:43 +0000)]
jenkins: Try importing the GPG key from Jenkins credentials
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 10:36:48 +0000 (10:36 +0000)]
jenkins: Remove the GPG key material as soon as possible
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 5 Dec 2024 10:34:54 +0000 (10:34 +0000)]
jenkins: Try to fetch a fresh Kerberos ticket
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>