]>
git.ipfire.org Git - pakfire.git/log
Michael Tremer [Sun, 15 Sep 2024 04:12:44 +0000 (04:12 +0000)]
util: Rename JSON function to add integers to int64
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 04:12:09 +0000 (04:12 +0000)]
util: Add new helper function to add double values to JSON objects
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 04:03:50 +0000 (04:03 +0000)]
util: Don't require a reference to pakfire for the JSON functions
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 03:40:57 +0000 (03:40 +0000)]
_pakfire: buildservice: Remove submit_stats()
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 03:40:34 +0000 (03:40 +0000)]
daemon: Keep the stats timer running continuously
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 03:37:33 +0000 (03:37 +0000)]
daemon: Send dummy stats using the event loop
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 03:36:58 +0000 (03:36 +0000)]
xfer: Implement sending a WebSocket message
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 03:20:47 +0000 (03:20 +0000)]
buildservice: Remove the event loop
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 03:15:34 +0000 (03:15 +0000)]
daemon: Remove the buildservice
It is becoming too complicated to make the buildservice event-driven
when it does not need to be. It can live as a single request abstraction
model.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 02:54:01 +0000 (02:54 +0000)]
buildservice: Remove holding the base URL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 02:53:19 +0000 (02:53 +0000)]
httpclient: Set the base URL for new xfers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 02:52:53 +0000 (02:52 +0000)]
httpclient: Add option to set a base URL
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 02:37:17 +0000 (02:37 +0000)]
daemon: Submit stats regularly
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 02:36:36 +0000 (02:36 +0000)]
buildservice: Tidy up creating the daemon control connection
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 15 Sep 2024 02:16:01 +0000 (02:16 +0000)]
buildservice: Enable authentication when uploading the payload
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 19:36:31 +0000 (19:36 +0000)]
daemon: Register any workers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 19:29:55 +0000 (19:29 +0000)]
daemon: Split stuff into a new worker thing
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 19:11:03 +0000 (19:11 +0000)]
xfer: Ignore CURLE_AGAIN
This is happening when the server is sending a ping over WebSocket which
triggers the socket, but there is no data for us to deal with as it has
already been handled by cURL.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 18:54:15 +0000 (18:54 +0000)]
xfer: Fail if the connection was unexpectedly closed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 18:53:56 +0000 (18:53 +0000)]
xfer: Free the allocated buffer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 18:47:55 +0000 (18:47 +0000)]
daemon: Parse the received job
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 18:04:29 +0000 (18:04 +0000)]
daemon: Automatically try to reconnect when the connection gets lost
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 17:32:26 +0000 (17:32 +0000)]
xfer: Refactor handling any transfer problems and call the close callback
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 17:18:05 +0000 (17:18 +0000)]
buildservice: Move daemon stuff to the daemon
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 13 Aug 2024 16:54:58 +0000 (16:54 +0000)]
httpclient: Implement basic WebSocket communication
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 12 Aug 2024 17:23:14 +0000 (17:23 +0000)]
xfer: Send authentication headers straight away when asked to
We don't need to check whether the server does not require
authentication first.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 12 Aug 2024 15:02:01 +0000 (15:02 +0000)]
buildservice: Allow passing the event loop to the HTTP client
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 12 Aug 2024 14:23:31 +0000 (14:23 +0000)]
httpclient: Remove queueing our own transfers
We now throw everything into cURL and let it handle all of that...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 12 Aug 2024 14:10:40 +0000 (14:10 +0000)]
httpclient: Tell cURL how many transfers we want to run in parallel
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 12 Aug 2024 10:48:44 +0000 (10:48 +0000)]
httpclient: Register the progress with the client
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 17:33:41 +0000 (17:33 +0000)]
httpclient: Implement parallel transfers with sd-events
This patch will create a new event loop for each HTTP client which will
be used to connect to cURL.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 12:28:39 +0000 (12:28 +0000)]
daemon: Use the systemd event loop instead of epoll
This will allow us more flexiblity and already implements a lot of
features.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 12:27:25 +0000 (12:27 +0000)]
Makefile: Build the C daemon again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 12:27:01 +0000 (12:27 +0000)]
daemon: Fix typo
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 12:12:20 +0000 (12:12 +0000)]
mount: Remove the excessive parameter passing
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 12:00:41 +0000 (12:00 +0000)]
deps: Revert all the braindead logging changes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 11:40:22 +0000 (11:40 +0000)]
logging: Add convenience functions to call the logger without having a context
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 10 Aug 2024 11:30:53 +0000 (11:30 +0000)]
mount: Loop devices are actually block devices
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Jan 2024 19:02:37 +0000 (19:02 +0000)]
logging: Remove *_ERRNO logging
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 30 Jan 2024 18:45:16 +0000 (18:45 +0000)]
pwd: Remove legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 18:12:14 +0000 (18:12 +0000)]
compress: Remove legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 18:02:54 +0000 (18:02 +0000)]
mount: Remove the legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 17:50:22 +0000 (17:50 +0000)]
file: Remove the legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 17:46:09 +0000 (17:46 +0000)]
dependencies: Drop the legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 17:45:13 +0000 (17:45 +0000)]
problem: Store a reference to the context
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 17:42:33 +0000 (17:42 +0000)]
parser: Store a reference to the context
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 17:15:31 +0000 (17:15 +0000)]
libpakfire: db: Replace legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 17:05:11 +0000 (17:05 +0000)]
build: Replace (most of) the legacy logger
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 16:56:47 +0000 (16:56 +0000)]
logging: Make the legacy logger configurable
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 16:49:22 +0000 (16:49 +0000)]
libpakfire: Move to new logging in pakfire.c
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Mon, 29 Jan 2024 10:54:19 +0000 (10:54 +0000)]
python: Make sure we hold the GIL when jumping into the logging callback
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 26 Jan 2024 18:59:18 +0000 (18:59 +0000)]
tests: Re-enable jail tests that pass
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 26 Jan 2024 18:55:14 +0000 (18:55 +0000)]
python: Pakfire.execute(): Fix parsing some arguments
There have been a couple of problems here when no or invalid values have
been passed.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 26 Jan 2024 18:44:22 +0000 (18:44 +0000)]
tests: Fix path to test configuration file
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 26 Jan 2024 18:38:55 +0000 (18:38 +0000)]
tests: Test the locally built binaries
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 26 Jan 2024 18:27:42 +0000 (18:27 +0000)]
tests: Dump log onto the console for Python tests
This is not very elegant, but I don't have a better way to do this now.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 26 Jan 2024 18:11:40 +0000 (18:11 +0000)]
python: Add tests for the Archive class
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 18:20:22 +0000 (18:20 +0000)]
tests: Add functions to make opening files in the test env easier
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:44:56 +0000 (16:44 +0000)]
tests: Add Python tests for context
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:43:47 +0000 (16:43 +0000)]
python: ctx: Cleanup code that dereferences the logging function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:41:11 +0000 (16:41 +0000)]
python: ctx: Setup the default logger
There was some code that started implementing this, but weirdly it was
never called...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:08:05 +0000 (16:08 +0000)]
tests: Disable all jail tests
Those mess up the console.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:04:44 +0000 (16:04 +0000)]
tests: Migrate other Python tests to the new framework
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:01:09 +0000 (16:01 +0000)]
tests: Build a common basis for Python tests
This new class has some methods that make it easy for us to set up some
simple Pakfire environments.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 16:00:13 +0000 (16:00 +0000)]
tests: Fix syntax errors in keys tests
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Thu, 25 Jan 2024 15:36:16 +0000 (15:36 +0000)]
tests: Remove dummy Python test
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 14 Jan 2024 16:12:56 +0000 (16:12 +0000)]
httpclient: Don't store finished transfers internally
This caused a recursion in reference counting resulting in the HTTP
client and all finished transfers never being freed.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 14 Jan 2024 16:02:03 +0000 (16:02 +0000)]
tests: Fix cgroup tests building from source
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 14 Jan 2024 16:01:43 +0000 (16:01 +0000)]
jail: Reset all callbacks after execution
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 14 Jan 2024 15:57:09 +0000 (15:57 +0000)]
jail: Remove unnecessary pakfire_jail_exec wrapper function
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sun, 14 Jan 2024 15:50:11 +0000 (15:50 +0000)]
jail: Remove callbacks from command calls
This makes those functions having fewer arguments which should help us
to write cleaner code.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 18:50:45 +0000 (18:50 +0000)]
jail: Replace communication callbacks by setting callbacks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 18:08:50 +0000 (18:08 +0000)]
jail: Add functions to set standard input/output callbacks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:40:33 +0000 (17:40 +0000)]
jail: Fix incorrect variable name
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:34:25 +0000 (17:34 +0000)]
jail: Drop extra function to check if buffer is full
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:30:03 +0000 (17:30 +0000)]
jail: Rename PTY forwarding flags
The term flags is slightly overused and makes things confusing.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:27:30 +0000 (17:27 +0000)]
jail: Move struct declarations out of the large struct
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:24:19 +0000 (17:24 +0000)]
jail: Remove unused stdout/stderr buffers
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:22:11 +0000 (17:22 +0000)]
jail: Drop custom log callback stuff
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:19:23 +0000 (17:19 +0000)]
build: Drop setting jail callback and use output callback instead
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 17:04:35 +0000 (17:04 +0000)]
jail: Implement sending data into standard input
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 16:33:00 +0000 (16:33 +0000)]
jail: Keep reading from/writing to PTY for as long as there is work to do
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 14:50:53 +0000 (14:50 +0000)]
jail: Forward function names of child processes
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 14:25:54 +0000 (14:25 +0000)]
jail: Remove duplicate logging function
There were two functions essentially doing the same, so one can go.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 13:43:49 +0000 (13:43 +0000)]
jail: Honour the buffer length when forwarding log messages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 13:10:02 +0000 (13:10 +0000)]
jail: PTY forwarding: Call the output callback if available
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 12:52:13 +0000 (12:52 +0000)]
jail: Only connect the current terminal if requested
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 12:45:46 +0000 (12:45 +0000)]
jail: Do not try to attempt any TTY operations if we don't have a TTY
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 12:37:45 +0000 (12:37 +0000)]
jail: Refactor how to drain logging buffers with callbacks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Tue, 19 Dec 2023 12:00:30 +0000 (12:00 +0000)]
jail: Make PTY forwarding a flag and remove interactive bool
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 13:24:45 +0000 (13:24 +0000)]
jail: Use the "fill buffer" function for logging, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 13:19:54 +0000 (13:19 +0000)]
jail: Align processing of file descriptors in the event loop
This is slightly easier to read than checking the event type first and
then handle the rest.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 13:07:50 +0000 (13:07 +0000)]
jail: Implement PTY forwarding
This replaces the previous pipe forwarding with a new controlling PTY
that is set up for each jail.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 13:07:00 +0000 (13:07 +0000)]
jail: Only try to restore file descriptors if they are still open
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 13:06:20 +0000 (13:06 +0000)]
jail: Fix setting raw mode only on the correct side
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 13:05:08 +0000 (13:05 +0000)]
jail: Store flags of stdin/stdout
We will need to restore them after we are finish the PTY forwarding.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 11:55:44 +0000 (11:55 +0000)]
mount: No longer create /dev/console in the jail
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Sat, 16 Dec 2023 11:53:47 +0000 (11:53 +0000)]
util: Fix creating symlinks
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 8 Dec 2023 17:22:43 +0000 (17:22 +0000)]
jail: Setup PTY in the master process and add it to the event loop
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Michael Tremer [Fri, 8 Dec 2023 16:45:39 +0000 (16:45 +0000)]
jail: Create a better struct to hold all PTY related stuff
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>