nixfleet/modules/hercules-ci/default.nix

31 lines
1 KiB
Nix

{config, ...}: {
services.hercules-ci-agent = {
enable = true;
settings = {
concurrentTasks = "auto";
clusterJoinTokenPath = config.age.secrets.hercules-ci-join-token.path;
# binaryCachesPath = config.age.secrets.hercules-ci-binary-caches.path;
binaryCachesPath = builtins.toFile "binary-caches.json" "{}";
secretsJsonPath = config.age.secrets.hercules-ci-secrets-json.path;
};
};
systemd.tmpfiles.rules = [
"d ${config.users.users.root.home}/.aws 770 root root"
"d ${config.users.users.hercules-ci-agent.home}/.aws 770 hercules-ci-agent hercules-ci-agent"
];
system.activationScripts.aws-credentials = ''
install ${config.age.secrets.aws-credentials.path} \
${config.users.users.hercules-ci-agent.home}/.aws/credentials \
-D \
--owner=hercules-ci-agent \
--group=hercules-ci-agent \
--mode=770
install \
${config.age.secrets.aws-credentials.path} \
-D \
${config.users.users.root.home}/.aws/credentials
'';
}