]> git.ipfire.org Git - pbs.git/log
pbs.git
6 months agouploads: Calculate the digest when receiving the file
Michael Tremer [Wed, 29 Jan 2025 17:15:46 +0000 (17:15 +0000)] 
uploads: Calculate the digest when receiving the file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix sending configuration
Michael Tremer [Wed, 29 Jan 2025 17:14:01 +0000 (17:14 +0000)] 
jobs: Fix sending configuration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agouploads: Return the received filename in the API response
Michael Tremer [Wed, 29 Jan 2025 17:13:27 +0000 (17:13 +0000)] 
uploads: Return the received filename in the API response

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agouploads: Add a debug handler to download any uploaded payload
Michael Tremer [Wed, 29 Jan 2025 10:40:11 +0000 (10:40 +0000)] 
uploads: Add a debug handler to download any uploaded payload

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agouploads: Send an URL to the client where to send the payload
Michael Tremer [Wed, 29 Jan 2025 10:39:39 +0000 (10:39 +0000)] 
uploads: Send an URL to the client where to send the payload

Hopefully this will give us some more flexibility in the future.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agouploads: Manually commit the session
Michael Tremer [Wed, 29 Jan 2025 10:38:58 +0000 (10:38 +0000)] 
uploads: Manually commit the session

This is required because the session might not be fast enough before the
client comes back with the payload. This ensures that we won't have a
race.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoconfig: Pass the configuration to Pakfire as string
Michael Tremer [Mon, 27 Jan 2025 15:47:45 +0000 (15:47 +0000)] 
config: Pass the configuration to Pakfire as string

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoconfigure: Check for all required Python module
Michael Tremer [Mon, 27 Jan 2025 15:07:59 +0000 (15:07 +0000)] 
configure: Check for all required Python module

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoconstants: Remove unused values
Michael Tremer [Mon, 27 Jan 2025 15:02:09 +0000 (15:02 +0000)] 
constants: Remove unused values

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoRename to PBS
Michael Tremer [Mon, 27 Jan 2025 14:58:53 +0000 (14:58 +0000)] 
Rename to PBS

This is easier than a hyphenated Python package name. This is now also
moved out of the pakfire module which has become a pure C module.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Store control connections by their UUID
Michael Tremer [Sun, 26 Jan 2025 17:27:35 +0000 (17:27 +0000)] 
jobs: Store control connections by their UUID

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Add crash handler
Michael Tremer [Sun, 26 Jan 2025 17:26:52 +0000 (17:26 +0000)] 
jobs: Add crash handler

This will be called by the builders when the build process has
unexexpectedly crashed.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix retrying jobs
Michael Tremer [Sun, 26 Jan 2025 14:32:35 +0000 (14:32 +0000)] 
jobs: Fix retrying jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix aborting jobs
Michael Tremer [Sun, 26 Jan 2025 14:28:32 +0000 (14:28 +0000)] 
jobs: Fix aborting jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoweb: Don't fetch index data in a transaction
Michael Tremer [Sun, 26 Jan 2025 14:22:15 +0000 (14:22 +0000)] 
web: Don't fetch index data in a transaction

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix fetching running jobs
Michael Tremer [Sun, 26 Jan 2025 14:21:54 +0000 (14:21 +0000)] 
jobs: Fix fetching running jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Refactor dispatching jobs
Michael Tremer [Sun, 26 Jan 2025 14:01:32 +0000 (14:01 +0000)] 
builders: Refactor dispatching jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoconfig: Tidy up code
Michael Tremer [Sun, 26 Jan 2025 13:58:25 +0000 (13:58 +0000)] 
config: Tidy up code

No functional changes.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoconfig: Make it easier to generate a text configuration
Michael Tremer [Sun, 26 Jan 2025 13:54:39 +0000 (13:54 +0000)] 
config: Make it easier to generate a text configuration

We cannot use the old method any more since we need to call async
methods.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agodatabase: (Re-)raise any exceptions after the task is done
Michael Tremer [Sun, 26 Jan 2025 13:53:40 +0000 (13:53 +0000)] 
database: (Re-)raise any exceptions after the task is done

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Fix least busy iterator
Michael Tremer [Sun, 26 Jan 2025 13:42:10 +0000 (13:42 +0000)] 
builders: Fix least busy iterator

This must be an outer join so that we will always get all builds, even
those that don't have a job running.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Fix accidental join
Michael Tremer [Sun, 26 Jan 2025 13:41:48 +0000 (13:41 +0000)] 
builders: Fix accidental join

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Use shorter code return queue length
Michael Tremer [Sun, 26 Jan 2025 13:32:01 +0000 (13:32 +0000)] 
jobs: Use shorter code return queue length

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agodatabase: Fix loads of incorrect joins
Michael Tremer [Sun, 26 Jan 2025 13:31:15 +0000 (13:31 +0000)] 
database: Fix loads of incorrect joins

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agocli: Fix running installchecks
Michael Tremer [Sun, 26 Jan 2025 13:01:46 +0000 (13:01 +0000)] 
cli: Fix running installchecks

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Send log files with decompressing them if client supports it
Michael Tremer [Sun, 26 Jan 2025 12:20:38 +0000 (12:20 +0000)] 
jobs: Send log files with decompressing them if client supports it

If the browser supports gzip, we simply send the raw file as there is no
need to decompress it first and then have the reverse proxy compress it
again.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoevents: Rely more on "selectin"
Michael Tremer [Sun, 26 Jan 2025 12:09:15 +0000 (12:09 +0000)] 
events: Rely more on "selectin"

This seems to be slightly faster in case of larger result sets.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoweb: Initialize the locale
Michael Tremer [Sun, 26 Jan 2025 12:06:59 +0000 (12:06 +0000)] 
web: Initialize the locale

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoweb: Log in the user before checking the XSRF cookie
Michael Tremer [Sun, 26 Jan 2025 12:05:49 +0000 (12:05 +0000)] 
web: Log in the user before checking the XSRF cookie

In case the cookie validation fails, we need to be able to send an error
message which accesses current_user.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agodatabase: Implement custom logger that only logs debugging
Michael Tremer [Sun, 26 Jan 2025 12:04:44 +0000 (12:04 +0000)] 
database: Implement custom logger that only logs debugging

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Bring back the welcome push message
Michael Tremer [Sun, 26 Jan 2025 11:57:12 +0000 (11:57 +0000)] 
users: Bring back the welcome push message

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Don't include the TTL in the payload of the push message
Michael Tremer [Sun, 26 Jan 2025 11:02:07 +0000 (11:02 +0000)] 
users: Don't include the TTL in the payload of the push message

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Simplify passing around push messages
Michael Tremer [Sun, 26 Jan 2025 10:57:52 +0000 (10:57 +0000)] 
users: Simplify passing around push messages

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoauth: Correctly set session expiry time in cookies
Michael Tremer [Sun, 26 Jan 2025 10:57:11 +0000 (10:57 +0000)] 
auth: Correctly set session expiry time in cookies

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agosessions: Correctly set expiry time
Michael Tremer [Sun, 26 Jan 2025 10:56:56 +0000 (10:56 +0000)] 
sessions: Correctly set expiry time

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Send push messages from the same task
Michael Tremer [Sun, 26 Jan 2025 10:35:34 +0000 (10:35 +0000)] 
users: Send push messages from the same task

This is necessary because SQLAlchemy cannot delete the push
notification from a different task.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Fix sending push notifications from command line
Michael Tremer [Sun, 26 Jan 2025 10:35:07 +0000 (10:35 +0000)] 
users: Fix sending push notifications from command line

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Fix deleting push subscriptions
Michael Tremer [Sun, 26 Jan 2025 10:34:50 +0000 (10:34 +0000)] 
users: Fix deleting push subscriptions

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Move JS for push notifications into the main file
Michael Tremer [Sun, 26 Jan 2025 10:28:02 +0000 (10:28 +0000)] 
users: Move JS for push notifications into the main file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Fix subscribing to push notifications
Michael Tremer [Sun, 26 Jan 2025 10:24:46 +0000 (10:24 +0000)] 
users: Fix subscribing to push notifications

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Fix showing number of running jobs
Michael Tremer [Sun, 26 Jan 2025 09:44:47 +0000 (09:44 +0000)] 
builders: Fix showing number of running jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Store when a builder has connected last and from where
Michael Tremer [Sat, 25 Jan 2025 19:31:10 +0000 (19:31 +0000)] 
builders: Store when a builder has connected last and from where

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Hash connections by hostname
Michael Tremer [Sat, 25 Jan 2025 19:24:55 +0000 (19:24 +0000)] 
builders: Hash connections by hostname

Since we now have one builder object per session they don't match their
hashes any more. Therefore we identify them by their name which is also
unique.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Log when builders connect or disconnect
Michael Tremer [Sat, 25 Jan 2025 19:24:39 +0000 (19:24 +0000)] 
builders: Log when builders connect or disconnect

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agouploads: Actually send an empty response
Michael Tremer [Sat, 25 Jan 2025 19:20:55 +0000 (19:20 +0000)] 
uploads: Actually send an empty response

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agowatchers: Fetch users as selectin
Michael Tremer [Sat, 25 Jan 2025 19:15:26 +0000 (19:15 +0000)] 
watchers: Fetch users as selectin

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Finish relationship to points
Michael Tremer [Sat, 25 Jan 2025 19:15:01 +0000 (19:15 +0000)] 
builds: Finish relationship to points

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoCSS: Fix broken stuff by importing CSS in the correct order
Michael Tremer [Sat, 25 Jan 2025 19:09:03 +0000 (19:09 +0000)] 
CSS: Fix broken stuff by importing CSS in the correct order

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoCSS: Drop unused style.css
Michael Tremer [Sat, 25 Jan 2025 19:05:31 +0000 (19:05 +0000)] 
CSS: Drop unused style.css

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Show system information
Michael Tremer [Sat, 25 Jan 2025 19:04:45 +0000 (19:04 +0000)] 
builders: Show system information

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Rename a couple of fields and add system
Michael Tremer [Sat, 25 Jan 2025 17:52:41 +0000 (17:52 +0000)] 
builders: Rename a couple of fields and add system

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agodatabase: Add a helper function to trigger a commit
Michael Tremer [Sat, 25 Jan 2025 17:51:06 +0000 (17:51 +0000)] 
database: Add a helper function to trigger a commit

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Limit the amount of concurrent log tail operations
Michael Tremer [Fri, 24 Jan 2025 17:16:43 +0000 (17:16 +0000)] 
jobs: Limit the amount of concurrent log tail operations

This way we will ensure that we access one file at a time and put the
others in a queue to not starve IO too hard.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Stream the log file faster
Michael Tremer [Fri, 24 Jan 2025 17:14:22 +0000 (17:14 +0000)] 
jobs: Stream the log file faster

When we are downloading the entire file, we only have to decompress it
and we don't have to search for line breaks before sending each chunk.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Ratelimit access to logs
Michael Tremer [Fri, 24 Jan 2025 17:05:35 +0000 (17:05 +0000)] 
jobs: Ratelimit access to logs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix deleting builds
Michael Tremer [Fri, 24 Jan 2025 16:52:16 +0000 (16:52 +0000)] 
builds: Fix deleting builds

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoevents: Correctly show the bug ID
Michael Tremer [Fri, 24 Jan 2025 16:24:35 +0000 (16:24 +0000)] 
events: Correctly show the bug ID

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Refactor auto-scaling
Michael Tremer [Fri, 24 Jan 2025 15:56:35 +0000 (15:56 +0000)] 
builders: Refactor auto-scaling

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Propagate back the group
Michael Tremer [Fri, 24 Jan 2025 15:56:07 +0000 (15:56 +0000)] 
builds: Propagate back the group

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Make repos read-only
Michael Tremer [Fri, 24 Jan 2025 15:55:44 +0000 (15:55 +0000)] 
builds: Make repos read-only

SQLAlchemy complained and wanted this flag set.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Add a CTE to fetch all currently running jobs
Michael Tremer [Fri, 24 Jan 2025 15:55:15 +0000 (15:55 +0000)] 
jobs: Add a CTE to fetch all currently running jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix rendering bugs
Michael Tremer [Fri, 24 Jan 2025 13:06:57 +0000 (13:06 +0000)] 
builds: Fix rendering bugs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix incorrect attribute access
Michael Tremer [Fri, 24 Jan 2025 13:04:24 +0000 (13:04 +0000)] 
builds: Fix incorrect attribute access

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Refactor handling bugs
Michael Tremer [Fri, 24 Jan 2025 11:34:22 +0000 (11:34 +0000)] 
builds: Refactor handling bugs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Make the group a relationship again
Michael Tremer [Fri, 24 Jan 2025 11:19:37 +0000 (11:19 +0000)] 
builds: Make the group a relationship again

This is the only way to easily work with the group; to assign it when we
create a build.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Rename "build_group" to just "group"
Michael Tremer [Fri, 24 Jan 2025 11:10:34 +0000 (11:10 +0000)] 
builds: Rename "build_group" to just "group"

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Rename "build_repo" to just "repo"
Michael Tremer [Fri, 24 Jan 2025 11:06:48 +0000 (11:06 +0000)] 
builds: Rename "build_repo" to just "repo"

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix cloning a build
Michael Tremer [Fri, 24 Jan 2025 10:56:08 +0000 (10:56 +0000)] 
builds: Fix cloning a build

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agopackages: Read files with a larger chunk size
Michael Tremer [Fri, 24 Jan 2025 10:37:22 +0000 (10:37 +0000)] 
packages: Read files with a larger chunk size

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agodatabase: Directly assign values on delete
Michael Tremer [Thu, 23 Jan 2025 20:54:55 +0000 (20:54 +0000)] 
database: Directly assign values on delete

I don't know why I implemented it like this.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agomirrors: Fix editing and deleting mirrors
Michael Tremer [Thu, 23 Jan 2025 20:54:34 +0000 (20:54 +0000)] 
mirrors: Fix editing and deleting mirrors

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agomirrors: Use the correct function to format the check time
Michael Tremer [Thu, 23 Jan 2025 20:35:11 +0000 (20:35 +0000)] 
mirrors: Use the correct function to format the check time

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agomirrors: Fix check
Michael Tremer [Thu, 23 Jan 2025 20:34:54 +0000 (20:34 +0000)] 
mirrors: Fix check

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agocli: Remove reference to command to generate VAPID keys
Michael Tremer [Thu, 23 Jan 2025 20:21:57 +0000 (20:21 +0000)] 
cli: Remove reference to command to generate VAPID keys

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix showing logs
Michael Tremer [Thu, 23 Jan 2025 14:05:21 +0000 (14:05 +0000)] 
jobs: Fix showing logs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix fetch builds
Michael Tremer [Thu, 23 Jan 2025 14:04:58 +0000 (14:04 +0000)] 
builds: Fix fetch builds

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix order after grouping
Michael Tremer [Thu, 23 Jan 2025 13:51:16 +0000 (13:51 +0000)] 
builds: Fix order after grouping

It looks like groupby() is sorting the groups before it returns them
which results in our original order being removed. We simply want to
have the most recent build at the top.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobackend: Remove unnecessary imports
Michael Tremer [Thu, 23 Jan 2025 13:32:52 +0000 (13:32 +0000)] 
backend: Remove unnecessary imports

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobackend: Run periodic tasks as a separate task
Michael Tremer [Thu, 23 Jan 2025 11:43:18 +0000 (11:43 +0000)] 
backend: Run periodic tasks as a separate task

This is the easiest option to ensure that any changes will be committed
to the database in the end. When we run the callback in the same task,
we will never release the database session and therfore have no
automatic commit.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agousers: Read the VAPID keys from the configuration file
Michael Tremer [Thu, 23 Jan 2025 11:38:30 +0000 (11:38 +0000)] 
users: Read the VAPID keys from the configuration file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuild groups: Fix rendering macro
Michael Tremer [Thu, 23 Jan 2025 11:29:04 +0000 (11:29 +0000)] 
build groups: Fix rendering macro

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Relax relationship between test groups
Michael Tremer [Thu, 23 Jan 2025 11:28:34 +0000 (11:28 +0000)] 
builds: Relax relationship between test groups

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix the empty state of the job queue
Michael Tremer [Thu, 23 Jan 2025 10:06:02 +0000 (10:06 +0000)] 
jobs: Fix the empty state of the job queue

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix rendering the job index page
Michael Tremer [Thu, 23 Jan 2025 10:05:42 +0000 (10:05 +0000)] 
jobs: Fix rendering the job index page

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Show a message if the queue is empty
Michael Tremer [Thu, 23 Jan 2025 09:56:01 +0000 (09:56 +0000)] 
jobs: Show a message if the queue is empty

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix rendering the queue
Michael Tremer [Thu, 23 Jan 2025 09:55:51 +0000 (09:55 +0000)] 
jobs: Fix rendering the queue

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix queries that generate the queue
Michael Tremer [Thu, 23 Jan 2025 09:54:59 +0000 (09:54 +0000)] 
jobs: Fix queries that generate the queue

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Drop message
Michael Tremer [Thu, 23 Jan 2025 09:46:49 +0000 (09:46 +0000)] 
builds: Drop message

This was an unused concept.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agodatabase: Use joined loading a little bit more often
Michael Tremer [Thu, 23 Jan 2025 09:39:30 +0000 (09:39 +0000)] 
database: Use joined loading a little bit more often

Since we have so many objects that have so many very close relationships
between each other, we can have lots of roundtrips to the database when
we fetch them all individually in an extra query.

The joined loads will however increase the size of the result by quite a
siginificant amount of data when applied to 1:N relationships with
larger Ns. It is pretty much free in a 1:1 relationship.

Therefore this commit changes that we fetch lots of stuff in one go so
we don't have as many roundtrips to the database. It will however result
in larger queries and potentially a little bit more bandwidth usage.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix running the installcheck
Michael Tremer [Wed, 22 Jan 2025 18:58:39 +0000 (18:58 +0000)] 
jobs: Fix running the installcheck

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Fix storing the result of the installcheck
Michael Tremer [Wed, 22 Jan 2025 18:58:16 +0000 (18:58 +0000)] 
jobs: Fix storing the result of the installcheck

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilders: Add helper function to find the least busy builders
Michael Tremer [Wed, 22 Jan 2025 18:57:34 +0000 (18:57 +0000)] 
builders: Add helper function to find the least busy builders

This works out a little bit easier than fetching the job queue for each
individual builder.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agorepos: Correctly wrap transactions
Michael Tremer [Wed, 22 Jan 2025 18:57:01 +0000 (18:57 +0000)] 
repos: Correctly wrap transactions

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agomirrors: Add filter to show the name of an ASN
Michael Tremer [Wed, 22 Jan 2025 18:23:52 +0000 (18:23 +0000)] 
mirrors: Add filter to show the name of an ASN

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agoweb: Add handler that disables authentication
Michael Tremer [Wed, 22 Jan 2025 18:23:18 +0000 (18:23 +0000)] 
web: Add handler that disables authentication

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agorepos: Fix rendering the mirror list
Michael Tremer [Wed, 22 Jan 2025 18:20:01 +0000 (18:20 +0000)] 
repos: Fix rendering the mirror list

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Asynchronously create jobs
Michael Tremer [Wed, 22 Jan 2025 18:01:37 +0000 (18:01 +0000)] 
builds: Asynchronously create jobs

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agojobs: Let failed default to False
Michael Tremer [Wed, 22 Jan 2025 18:01:12 +0000 (18:01 +0000)] 
jobs: Let failed default to False

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Fix wrong argument name for groups
Michael Tremer [Wed, 22 Jan 2025 18:00:51 +0000 (18:00 +0000)] 
builds: Fix wrong argument name for groups

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
6 months agobuilds: Correctly open a transaction
Michael Tremer [Wed, 22 Jan 2025 18:00:30 +0000 (18:00 +0000)] 
builds: Correctly open a transaction

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>