feat(lib): init genFuse
All checks were successful
Check meta / check_dns (pull_request) Successful in 14s
Check meta / check_meta (pull_request) Successful in 15s
Check workflows / check_workflows (pull_request) Successful in 16s
Build all the nodes / ap01 (pull_request) Successful in 1m17s
Build all the nodes / bridge01 (pull_request) Successful in 1m50s
Build all the nodes / netaccess01 (pull_request) Successful in 33s
Build all the nodes / netcore01 (pull_request) Successful in 30s
Build all the nodes / build01 (pull_request) Successful in 2m9s
Build all the nodes / hypervisor01 (pull_request) Successful in 1m59s
Build all the nodes / hypervisor02 (pull_request) Successful in 2m8s
Build all the nodes / netcore02 (pull_request) Successful in 41s
Build all the nodes / geo01 (pull_request) Successful in 2m30s
Build all the nodes / hypervisor03 (pull_request) Successful in 1m40s
Build all the nodes / geo02 (pull_request) Successful in 2m39s
Build the shell / build-shell (pull_request) Successful in 35s
Run pre-commit on all files / pre-commit (pull_request) Successful in 47s
Build all the nodes / compute01 (pull_request) Successful in 3m17s
Build all the nodes / rescue01 (pull_request) Successful in 1m49s
Build all the nodes / tower01 (pull_request) Successful in 1m43s
Build all the nodes / storage01 (pull_request) Successful in 2m33s
Build all the nodes / vault01 (pull_request) Successful in 2m27s
Build all the nodes / web02 (pull_request) Successful in 2m29s
Build all the nodes / web01 (pull_request) Successful in 2m34s
Build all the nodes / web03 (pull_request) Successful in 2m36s
Build all the nodes / netaccess01 (push) Successful in 20s
Build all the nodes / netcore02 (push) Successful in 20s
Build all the nodes / netcore01 (push) Successful in 21s
Build all the nodes / ap01 (push) Successful in 32s
Build all the nodes / bridge01 (push) Successful in 1m53s
Build all the nodes / hypervisor02 (push) Successful in 1m52s
Build all the nodes / hypervisor03 (push) Successful in 1m53s
Build all the nodes / rescue01 (push) Successful in 2m0s
Build all the nodes / build01 (push) Successful in 2m26s
Build the shell / build-shell (push) Successful in 34s
Run pre-commit on all files / pre-commit (push) Successful in 35s
Build all the nodes / tower01 (push) Successful in 2m29s
Build all the nodes / web02 (push) Successful in 2m11s
Build all the nodes / geo02 (push) Successful in 2m37s
Build all the nodes / vault01 (push) Successful in 2m31s
Build all the nodes / geo01 (push) Successful in 2m52s
Build all the nodes / storage01 (push) Successful in 2m54s
Build all the nodes / hypervisor01 (push) Successful in 2m56s
Build all the nodes / web03 (push) Successful in 2m43s
Build all the nodes / compute01 (push) Successful in 3m25s
Build all the nodes / web01 (push) Successful in 3m5s

This commit is contained in:
catvayor 2025-02-06 10:12:59 +01:00
parent 85374e9d6c
commit ecb6b54b9e
Signed by: lbailly
GPG key ID: CE3E645251AC63F3

View file

@ -49,6 +49,24 @@ rec {
attrsList:
fuseAttrs (builtins.map f attrsList);
/*
Generate an `attrsList` of given size with the generator before fusing
the resulting list of attribute sets.
Type: (Int -> attrs) -> Int -> attrs
Example:
f = s: { "a${toString s}" = s + s; }
genFuse f 3
=> { a0 = 0; a1 = 2; a2 = 4; }
*/
genFuse =
# Int -> attrs
f:
# Int
size:
fuseAttrs (builtins.genList f size);
/*
Equivalent of lib.singleton but for an attribute set.