Maximilian Bosch
9fe7062946
Update flake and fix build
...
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=2a336813ad2a4d64d027830507276da32927d215 ' (2025-03-16)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=b918f1c307b314daa44407bac60046630f13ed48 ' (2025-03-27)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/a1185f4064c18a5db37c5c84e5638c78b46e3341' (2025-03-16)
→ 'github:NixOS/nixpkgs/d02d88f8de5b882ccdde0465d8fa2db3aa1169f7' (2025-03-25)
2025-03-28 10:31:30 +01:00
Maximilian Bosch
5167437de1
Merge pull request 'default.nix: Updated use of flake-compat' ( #29 ) from aftix/hydra:main into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/29
Reviewed-by: Maximilian Bosch <maximilian@mbosch.me >
2025-03-28 09:11:29 +00:00
aftix
15d7ee22b1
default.nix: Updated use of flake-compat
...
I have added flake-compat to be pinned by flake.lock,
updated the source to the still-maintained nix-community
repo, and removed the URL literal syntax.
2025-03-22 12:40:51 -05:00
Maximilian Bosch
d60c9ff6ab
Merge pull request 'Update flake and fix build' ( #30 ) from ma27/hydra:flake-update into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/30
Reviewed-by: eldritch horrors <pennae@noreply.git.lix.systems >
Reviewed-by: raito <raito@noreply.git.lix.systems >
2025-03-22 07:41:29 +00:00
Maximilian Bosch
c0b9c8787f
Update flake and fix build
...
In hydra-evaluator I would've done the same stuff with passing `aio`
down to everything, but it seemed kinda weird to add it to every single
method. IMHO, this is also a sign that there are things ongoing that
don't need to be in the same struct, so I decided to split it off.
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=ca89e431a31527a014bfd0d529da2a8099027a5f ' (2025-03-04)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=2a336813ad2a4d64d027830507276da32927d215 ' (2025-03-16)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/6af28b834daca767a7ef99f8a7defa957d0ade6f' (2025-03-04)
→ 'github:NixOS/nixpkgs/a1185f4064c18a5db37c5c84e5638c78b46e3341' (2025-03-16)
2025-03-17 20:05:57 +00:00
Maximilian Bosch
1e63e0a6d2
Merge pull request 'Bring back constituents' ( #28 ) from ma27/hydra:bring-back-constituents into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/28
Reviewed-by: raito <raito@noreply.git.lix.systems >
2025-03-14 11:51:55 +00:00
Maximilian Bosch
a851cb8a18
Bring back constituents
...
This partially reverts commit 370a4bf138 .
2025-03-12 13:36:45 +01:00
Maximilian Bosch
4b826e2255
Merge pull request 'Update flake and fix build with mostly async liblixstore' ( #25 ) from ma27/hydra:flake-update into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/25
Reviewed-by: eldritch horrors <pennae@noreply.git.lix.systems >
2025-03-12 12:35:09 +00:00
Maximilian Bosch
48168af261
Update flake and fix build with mostly async liblixstore
...
The vast majority of changes was pretty straight-forward: we need an
AsyncIoRoot per thread to resolve promises we get from Lix. The `aio`
object is created per thread and passed as lvalue ref instead of making
it a field of the State struct since that struct is shared between the
threads.
The biggest change affects the NAR extractor: parseAndCopyDump has been
removed, instead the `nar::parse` and `nar::dump` parts are public now.
This won't work with the original parse visitor anymore, so instead the
NAR is parsed once and dumped again to copy it to the binary cache. In
between, the generator is walked through to search for relevant files
(such as build products) and after that the generators are recreated for
`AsyncGeneratorInputStream` to read again.
2025-03-12 13:25:40 +01:00
Maximilian Bosch
90dd2ed436
Merge pull request 'Fix build with latest Lix, use CLang' ( #22 ) from ma27/hydra:flake-update into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/22
2025-02-16 17:00:41 +00:00
Maximilian Bosch
8ba43324cd
Fix build with latest Lix, use CLang
...
Contrary to what I had in mind, this wasn't the case yet and caused a
bunch of compilation failures with latest Lix main.
2025-02-10 13:04:50 +01:00
Maximilian Bosch
8f73d63eac
Merge pull request 'flake: remove nix-eval-jobs input, now part of Lix itself' ( #21 ) from ma27/hydra:lix-with-vendored-nix-eval-jobs into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/21
2025-02-08 16:02:25 +00:00
Maximilian Bosch
dbb3e2a8c7
flake: remove nix-eval-jobs input, now part of Lix itself
...
This also fixes #18 : `nix-eval-jobs` isn't taken from the flake input,
but stems from the same overlay as Lix itself, so this won't cause two
Lix inside Hydra's closure anymore.
2025-01-30 14:25:04 +01:00
Maximilian Bosch
d72ade3ad3
Merge pull request 'Update flake to latest nixpkgs & latest Lix main' ( #20 ) from ma27/hydra:flake-update into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/20
2025-01-30 13:10:33 +00:00
Maximilian Bosch
67fc8213df
Update flake; start aio event loop in queue monitor
2025-01-28 18:04:41 +01:00
Maximilian Bosch
44a472af67
Update flake; fix build with latest Lix / nix-eval-jobs
...
Most notably, this fixes the API change of `Store::narFromPath`[1] that
now returns a `box_ptr<Source>` instead of a Generator. I decided to do
the most minimal invasive thing here, i.e. dereferencing the source out
of the box in the NAR extraction code to fix the build again given that
the API will change even more in the future and thus the implementation
in here will require more work anyways.
To quote the upstream commit:
> [...] and would need to be changed much as they are now once async
> streams come around either way
[1] See Lix commit c82cc16754
2025-01-27 22:34:13 +01:00
Maximilian Bosch
5e88d3b089
flake.lock: Update
...
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=4cacb5412fedc9f37bc7a502540374f774d923cf ' (2025-01-18)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=5a41803f744822377587f784ded0e6a061b39cd4 ' (2025-01-25)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/6a3ae7a5a12fb8cac2d59d7df7cbd95f9b2f0566' (2025-01-18)
→ 'github:NixOS/nixpkgs/035f8c0853c2977b24ffc4d0a42c74f00b182cd8' (2025-01-23)
2025-01-25 12:42:16 +01:00
Maximilian Bosch
5cdcd17cbf
Add lix-2.92 branch to README
...
Keeping 2.91 as maintained for now until either 24.11 is dead or 2.92
gets backported there.
2025-01-19 08:48:23 +01:00
Maximilian Bosch
cbd6ceb673
flake.lock: Update
...
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=66f6dbda32959dd5cf3a9aaba15af72d037ab7ff ' (2024-11-20)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=4cacb5412fedc9f37bc7a502540374f774d923cf ' (2025-01-18)
• Updated input 'lix/pre-commit-hooks':
'github:cachix/git-hooks.nix/4e743a6920eab45e8ba0fbe49dc459f1423a4b74' (2024-09-19)
→ 'github:cachix/git-hooks.nix/6f4e2a2112050951a314d2733a994fbab94864c6' (2024-12-04)
• Updated input 'nix-eval-jobs':
'git+https://git.lix.systems/lix-project/nix-eval-jobs?ref=refs/heads/main&rev=dfc286ca3dc49118c30d8d6205d6d6af76c62b7a ' (2024-11-23)
→ 'git+https://git.lix.systems/lix-project/nix-eval-jobs?ref=refs/heads/main&rev=6482bee40b89ab2c28d2e988848aa9ae0429d78c ' (2025-01-18)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/f9f0d5c5380be0a599b1fb54641fa99af8281539' (2024-12-02)
→ 'github:NixOS/nixpkgs/6a3ae7a5a12fb8cac2d59d7df7cbd95f9b2f0566' (2025-01-18)
2025-01-18 23:53:19 +01:00
Maximilian Bosch
eccf01d4fe
Merge pull request 'flake: update nixpkgs to 24.11' ( #15 ) from ma27/hydra:update-nixpkgs into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/15
2024-12-06 16:37:25 +00:00
Maximilian Bosch
42c4a85ec8
Merge pull request 'README: document release branches' ( #16 ) from ma27/hydra:readme-branches into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/16
2024-12-06 16:34:52 +00:00
Maximilian Bosch
2b1c46730c
README: document release branches
...
Closes #12
2024-12-04 10:24:37 +01:00
Maximilian Bosch
51608e1ca1
flake: update nixpkgs to 24.11
...
I've been using the module on 24.11 and building Hydra from this repo
with 24.11 as well, so far it's looking good.
Making the upgrade since 24.05 is deprecated now.
2024-12-04 10:13:34 +01:00
leo60228
6285440304
Merge pull request 'chore: apply lix include-rearrangement to hydra' ( #14 ) from jade/include-rearrangement into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/14
Reviewed-by: leo60228 <leo@60228.dev >
2024-11-29 16:23:14 -05:00
Jade Lovelace
988554eb7a
chore: apply lix include-rearrangement to hydra
...
This complies with the new include layout in Lix, which will eventually
replace the legacy one previously in use.
2024-11-25 23:08:32 -08:00
Jade Lovelace
4acb1959a1
fixup: use the correct nix-eval-jobs input URL; same commit
2024-11-25 23:02:52 -08:00
jade
453adb7f25
Merge pull request 'Update all flake inputs, fix build with latest Lix' ( #13 ) from ma27/hydra:update-lix into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/13
2024-11-26 06:50:41 +00:00
Maximilian Bosch
acd54bfbd6
Update all flake inputs, fix build with latest Lix
...
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=ed9b7f4f84fd60ad8618645cc1bae2d686ff0db6 ' (2024-10-05)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=66f6dbda32959dd5cf3a9aaba15af72d037ab7ff ' (2024-11-20)
• Updated input 'lix/nix2container':
'github:nlewo/nix2container/3853e5caf9ad24103b13aa6e0e8bcebb47649fe4' (2024-07-10)
→ 'github:nlewo/nix2container/fa6bb0a1159f55d071ba99331355955ae30b3401' (2024-08-30)
• Updated input 'lix/pre-commit-hooks':
'github:cachix/git-hooks.nix/f451c19376071a90d8c58ab1a953c6e9840527fd' (2024-07-15)
→ 'github:cachix/git-hooks.nix/4e743a6920eab45e8ba0fbe49dc459f1423a4b74' (2024-09-19)
• Updated input 'nix-eval-jobs':
'git+https://git.lix.systems/lix-project/nix-eval-jobs?ref=refs/heads/main&rev=42a160bce2fd9ffebc3809746bc80cc7208f9b08 ' (2024-08-13)
→ 'git+https://git.lix.systems/lix-project/nix-eval-jobs?ref=refs/heads/main&rev=912a9d63319e71ca131e16eea3348145a255db2e ' (2024-11-18)
• Updated input 'nix-eval-jobs/flake-parts':
'github:hercules-ci/flake-parts/8471fe90ad337a8074e957b69ca4d0089218391d' (2024-08-01)
→ 'github:hercules-ci/flake-parts/506278e768c2a08bec68eb62932193e341f55c90' (2024-11-01)
• Updated input 'nix-eval-jobs/nix-github-actions':
'github:nix-community/nix-github-actions/622f829f5fe69310a866c8a6cd07e747c44ef820' (2024-07-04)
→ 'github:nix-community/nix-github-actions/e04df33f62cdcf93d73e9a04142464753a16db67' (2024-10-24)
• Updated input 'nix-eval-jobs/treefmt-nix':
'github:numtide/treefmt-nix/349de7bc435bdff37785c2466f054ed1766173be' (2024-08-12)
→ 'github:numtide/treefmt-nix/746901bb8dba96d154b66492a29f5db0693dbfcc' (2024-10-30)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/ecbc1ca8ffd6aea8372ad16be9ebbb39889e55b6' (2024-10-06)
→ 'github:NixOS/nixpkgs/e8c38b73aeb218e27163376a2d617e61a2ad9b59' (2024-11-16)
2024-11-23 10:58:14 +01:00
leo60228
a4b2b58e2b
update for lix header change
2024-11-17 19:57:36 -05:00
Maximilian Bosch and Yureka
ee1234c15c
ignoreException has been split into two
...
The Finally part is a destructor, so using `ignoreExceptionInDestructor`
seems to be the correct choice here.
2024-10-07 19:22:32 +02:00
Maximilian Bosch and Yureka
7c7078cccf
Fix build with latest Lix
...
Since ca1dc3f70b , the NAR parser has moved
the preallocate & receive steps into the file handle class to remove the
assumption that only one file can be handled at a time.
2024-10-07 19:22:32 +02:00
Maximilian Bosch and Yureka
a5099d9e80
flake.lock: Update
...
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=02eb07cfd539c34c080cb1baf042e5e780c1fcc2 ' (2024-09-01)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=31954b51367737defbae87fba053b068897416fb ' (2024-09-26)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/6e99f2a27d600612004fbd2c3282d614bfee6421' (2024-08-30)
→ 'github:NixOS/nixpkgs/759537f06e6999e141588ff1c9be7f3a5c060106' (2024-09-25)
2024-10-07 19:22:32 +02:00
Yureka
799441dcf6
Revert "update lix"
...
This reverts commit e4d466ffcd .
2024-10-06 13:55:10 +02:00
Yureka
e4d466ffcd
update lix
2024-10-05 23:32:45 +02:00
raito
d3257e4761
Merge pull request 'Add metric for builds waiting for download slot' ( #9 ) from waiting-metrics into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/9
Reviewed-by: raito <raito@noreply.git.lix.systems >
2024-10-01 16:16:24 +00:00
K900
f23ec71227
Add metric for builds waiting for download slot
2024-10-01 19:14:24 +03:00
leo60228
ac37e44982
Merge pull request 'Update Lix; fix build' ( #7 ) from ma27/hydra:lix-update into main
...
Reviewed-on: https://git.lix.systems/lix-project/hydra/pulls/7
Reviewed-by: leo60228 <leo@60228.dev >
2024-09-02 22:56:03 +00:00
Maximilian Bosch
6a88e647e7
flake.lock: Update; fix build
...
Flake lock file updates:
• Updated input 'lix':
'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=278fddc317cf0cf4d3602d0ec0f24d1dd281fadb ' (2024-08-17)
→ 'git+https://git.lix.systems/lix-project/lix?ref=refs/heads/main&rev=02eb07cfd539c34c080cb1baf042e5e780c1fcc2 ' (2024-09-01)
• Updated input 'nixpkgs':
'github:NixOS/nixpkgs/c3d4ac725177c030b1e289015989da2ad9d56af0' (2024-08-15)
→ 'github:NixOS/nixpkgs/6e99f2a27d600612004fbd2c3282d614bfee6421' (2024-08-30)
2024-09-02 10:53:46 +02:00
Pierre Bourdon
8d5d4942e1
queue-runner: remove unused method from State
2024-08-27 02:57:37 +02:00
Pierre Bourdon
e5a8ee5c17
web: require permissions for /api/push
2024-08-27 02:57:16 +02:00
Pierre Bourdon
fd7fd0ad65
treewide: clang-tidy modernize
2024-08-27 01:33:12 +02:00
Pierre Bourdon
d3fcedbcf5
treewide: enable clang-tidy bugprone findings
...
Fix some trivial findings throughout the codebase, mostly making
implicit casts explicit.
2024-08-27 00:43:17 +02:00
Pierre Bourdon
3891ad77e3
queue-runner: change Machine object creation to work around clang bug
...
https://github.com/llvm/llvm-project/issues/106123
2024-08-26 22:34:48 +02:00
Pierre Bourdon
21fd1f8993
flake: add devShells, including a clang one for clang-tidy & more
2024-08-26 22:22:18 +02:00
emily
ab6d81fad4
api: fix github webhook
2024-08-26 20:26:21 +02:00
64df0cba47
Match URIs that don't end in .git
...
Co-authored-by: Charlotte <lotte@chir.rs >
2024-08-26 20:26:21 +02:00
Sandro Jäckel and emily
6179b298cb
Add gitea push hook
2024-08-26 20:26:20 +02:00
Pierre Bourdon
44b9a7b95d
queue-runner: handle broken pg pool connections in builder code
...
Completes 9b62c52e5c with another location
that was initially missed.
2024-08-25 22:05:13 +02:00
Maximilian Bosch and Pierre Bourdon
3ee51dbe58
readIntoSocket: fix with store URIs containing an &
...
The third argument to `open()` in `-|` mode is passed to a shell if it's
a string. In my case the store URI contains
`?secret-key=${signingKey.directory}/secret&compression=zstd`
For the `nix store cat` case this means that
* until `&` the process will be started in the background. This fails
immediately because no path to cat is specified.
* `compression=zstd` is a variable assignment
* the `$path` argument to `store cat` is attempted to be executed as
another command
Passing just the list solves the problem.
2024-08-18 21:41:54 +00:00
Maximilian Bosch
e987f74954
doc: drop dev-notes & make update-dbix more discoverable
...
`dev-notes` are severely outdated. I dropped everything except one note
that I moved to hacking.md. The parts about creating users are also
covered elsewhere.
The `update-dbix` part got a just command to make it discoverable again.
2024-08-18 14:47:09 +02:00