Commit graph

394 commits

Author SHA1 Message Date
Wolfgang Walther
f934044282
nixos/hydra: avoid conflicts for local postgres ident map
The key change here is, that the match was on the hydra database only
previously, but is now limited to to the hydra role instead. This avoids
conflicts with rules that are created by other modules or downstream
users.

With this change, we can remove the additional "postgres postgres" line,
because the default pg_hba line will kick in again and allow the
postgres user access to the postgres role.

Renaming the map from hydra-users to hydra is for consistency, so that
all modules can define maps matching in name with the role they manage.

The change from ident to peer is just cosmetic, ident is only used for
TCP connections and falls back to peer anyway.
2025-05-10 10:32:47 +02:00
fleaz
8638793548 nixos/gitlab-runner: Add dockerPullPolicy option 2025-05-09 09:34:00 +02:00
Silvan Mosberger
374e6bcc40 treewide: Format all Nix files
Format all Nix files using the officially approved formatter,
making the CI check introduced in the previous commit succeed:

  nix-build ci -A fmt.check

This is the next step of the of the [implementation](https://github.com/NixOS/nixfmt/issues/153)
of the accepted [RFC 166](https://github.com/NixOS/rfcs/pull/166).

This commit will lead to merge conflicts for a number of PRs,
up to an estimated ~1100 (~33%) among the PRs with activity in the past 2
months, but that should be lower than what it would be without the previous
[partial treewide format](https://github.com/NixOS/nixpkgs/pull/322537).

Merge conflicts caused by this commit can now automatically be resolved while rebasing using the
[auto-rebase script](8616af08d9/maintainers/scripts/auto-rebase).

If you run into any problems regarding any of this, please reach out to the
[formatting team](https://nixos.org/community/teams/formatting/) by
pinging @NixOS/nix-formatting.
2025-04-01 20:10:43 +02:00
Sandro Jäckel
588f41bef0
nixos/hydra: fix race condition in hydra-compress-logs
Source https://github.com/NixOS/hydra/pull/1450
2025-03-17 15:41:00 +01:00
shelvacu
1a4575f9db
nixos/modules: Add security.pki.caBundle option and make all services use it for CA bundles (#352244)
Previously some modules used `config.environment.etc."ssl/certs/ca-certificates.crt".source`, some used `"/etc/ssl/certs/ca-certificates.crt"`, and some used `"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"`. These were all bad in one way or another:

- `config.environment.etc."ssl/certs/ca-certificates.crt".source` relies on `source` being set; if `text` is set instead this breaks, introducing a weird undocumented requirement
- `"/etc/ssl/certs/ca-certificates.crt"` is probably okay but very un-nix. It's a magic string, and the path doesn't change when the file changes (and so you can't trigger service reloads, for example, when the contents change in a new system activation)
- `"${pkgs.cacert}/etc/ssl/certs/ca-bundle.crt"` silently doesn't include the options from `security.pki`

Co-authored-by: Shelvacu <git@shelvacu.com>
2025-03-08 08:41:08 +00:00
Philip Taron
6630c758e0
nixos/hydra: fix hydra-compress-logs choking up on quoting when using zstd (#363980) 2024-12-31 12:22:57 -08:00
Sandro Jäckel
eb46f107af
nixos/hydra: fix hydra-compress-logs choking up on quoting when using zstd 2024-12-26 23:58:11 +01:00
nicoo
f6c5531461
nixos: Don't set !allowSubstitutes (#314664)
It is set by `runCommandLocal` and prevents fetching the build output
from `cache.nixos.org` or another trusted substituter.
2024-12-12 18:26:24 +00:00
Silvan Mosberger
4f0dadbf38 treewide: format all inactive Nix files
After final improvements to the official formatter implementation,
this commit now performs the first treewide reformat of Nix files using it.
This is part of the implementation of RFC 166.

Only "inactive" files are reformatted, meaning only files that
aren't being touched by any PR with activity in the past 2 months.
This is to avoid conflicts for PRs that might soon be merged.
Later we can do a full treewide reformat to get the rest,
which should not cause as many conflicts.

A CI check has already been running for some time to ensure that new and
already-formatted files are formatted, so the files being reformatted here
should also stay formatted.

This commit was automatically created and can be verified using

    nix-build a08b3a4d19.tar.gz \
      --argstr baseRev b32a094368
    result/bin/apply-formatting $NIXPKGS_PATH
2024-12-10 20:26:33 +01:00
Felix Buehler
67553951b1 nixos/services.gocd-agent: remove with lib; 2024-12-08 13:21:50 +01:00
Felix Buehler
d575253885 nixos/services.github-runners: remove with lib; 2024-12-08 13:21:50 +01:00
Felix Buehler
5ee4c4b0a1 nixos/services.buildbot-worker: remove with lib; 2024-12-08 13:21:50 +01:00
Alex Martens
69fd74d8fe nixos/github-runners: remove newam from maintainers 2024-12-07 08:52:49 -08:00
Dave Aitken
8c39875ae3
nixos/github-runner: use bashInteractive instead of bash (#339875)
Some github actions that use `bash` expect interactive features to be available. One such action is the [use-nix-shell](https://github.com/rrbutani/use-nix-shell-action) action. I couldn't find a way to override this even with `cfg.extraPackages`, due to the way the path is ordered.
2024-12-06 13:38:25 +08:00
misuzu
e94bbdd993
nixos/gitlab-runner: let script options accept scripts as strings (#344644) 2024-12-03 23:25:31 +02:00
Ben Gamari
0a7dc31a85 gitlab-runner: Try fixing #356717 2024-12-01 15:03:37 -05:00
Jörg Thalheim
0f73a33f7e
nixos/buildbot-master: allow merging extraConfig and extraImports (#322469) 2024-11-04 13:32:04 +01:00
magic_rb
3b8c814fdc
buildbot: fix setting package to a drv from a different nixpkgs
Signed-off-by: magic_rb <richard@brezak.sk>
2024-11-02 17:01:20 +01:00
Sandro Jäckel
73824e231c nixos/hydra: fix shellcheck findings with enableStrictShellChecks enabled 2024-10-30 08:34:32 +00:00
Jörg Thalheim
9584ba7f85 nixos/buildbot: use python version used of the buildbot package
Since the buildbot package can be overwritten, it can be build against a
different python version.
This pull request makes sure we don't use the wrong python version.
This makes using buildbot-nix easier for both nixpkgs unstable and
nixpkgs stable.
2024-10-23 22:16:55 +11:00
Aaron Andersen
2ab323a087
nixos/github-runners: Make 'enable' functional (#342996) 2024-10-16 10:18:14 +02:00
James Atkins
f579c189a7 nixos/buildbot-master: allow merging extraConfig and extraImports
Allow multiple definitions to be concatenated together with a new line.
2024-10-12 11:56:07 -05:00
Bjørn Forsman
48908e5b86 nixos: improve systemd slice names
Following
https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html#Description=,
update slice names to be short, descriptive and capitalized.
2024-10-02 20:24:13 +02:00
danjujan
aa6ef8e22b
nixos/gitlab-runner: let script options accept scripts as strings
The script options not only accept paths to a script but also the script as string. See https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runners-section
2024-09-26 14:41:46 +02:00
Daniel Nagy
fdf019979e
nixos/jenkinsSlave: remove with lib; 2024-09-21 16:30:00 +02:00
zowoq
2ff3fa0e87 nixos/hydra: set a default for hydra-compress-logs service
follow up from 0c454e9317
2024-09-20 17:36:22 +10:00
Bryan Richter
588b1f8df6
nixos/github-runners: make enable functional
Fixes #305304
2024-09-20 09:09:17 +03:00
Weijia Wang
53eac0b4de nixos/buildbot: fix usage of escapeStr 2024-09-16 13:34:58 +02:00
Felix Buehler
d43e1678e7 nixos/services.buildbot-master: remove with lib; 2024-09-15 10:43:48 +02:00
Rick van Schijndel
f6b2548c60
nixos/hydra: unset SSL_CERT_FILE (#338536) 2024-09-09 20:29:36 +02:00
Rick van Schijndel
0eb77d8da5
nixos/hydra: add system-hydra.slice, fix typo (#338532) 2024-09-09 19:47:21 +02:00
Philip Taron
271d117596
treewide: fix eval related to with lib; removal (#339356) 2024-09-04 09:42:58 -07:00
éclairevoyant
f6306c0961
treewide: fix eval related to with lib; removal 2024-09-04 12:21:09 -04:00
Sirio Balmelli
dc700df6b2
nixos/github-runner: fix build failure
Shellcheck complains:

       > args=(
       >      ^-- SC2054 (warning): Use spaces, not commas, to separate array elements.

Add a comment disabling shellcheck in this case and annotating why.

Signed-off-by: Sirio Balmelli <sirio@b-ad.ch>
2024-09-04 09:20:11 +02:00
Tomodachi94
2d8f095ab1
nixos/hydra: unset SSL_CERT_FILE
An ancient comment says to unset this variable after 16.03. Considering
we've just gotten past 24.05, I think it's safe to remove this finally.

Tests still pass after this change.
2024-08-30 21:26:59 -07:00
Tomodachi94
d464996f3f
nixos/hydra: fix typo 2024-08-30 21:11:17 -07:00
Tomodachi94
386a1d5d06
nixos/hydra: add system-hydra.slice
Part of #279915
2024-08-30 21:09:00 -07:00
Philip Taron
117f3ceb51
treewide/nixos: remove with lib; part 1 (#335603) 2024-08-29 15:42:04 -07:00
Felix Buehler
5fb90466e8 nixos/services.jenkins.jobBuilder: remove with lib; 2024-08-30 00:30:39 +02:00
Felix Buehler
4b3987ab25 nixos/services.jenkins: remove with lib; 2024-08-30 00:30:38 +02:00
Felix Buehler
f80a40105a nixos/services.hydra: remove with lib; 2024-08-29 23:38:21 +02:00
Sandro Jäckel
0c454e9317 nixos/hydra: use configured compression in hydra-compress-logs service 2024-08-29 13:56:32 +10:00
Sandro Jäckel
55760e4c10 hydra: rename from hydra_unstable
There is no stable hydra package
2024-08-29 13:56:32 +10:00
Florian Klink
bccb2f7c84 buildkite-agent: 3.76.2 -> 3.77.0
We can also drop the workaround included in the bump to 3.76.1, as
upstream reverted that behavorial change.
2024-08-08 13:24:15 +03:00
Sandro
cfd25f7c6a
Merge pull request #322403 from dadada/dev/gitlab-runner-podman
nixos/gitlab-runner: allow access to podman socket
2024-08-03 16:48:09 +02:00
Florian Klink
129558261d
buildkite-agent: 3.59.0 -> 3.76.1 (#331340)
* buildkite-agent: 3.59.0 -> 3.76.1

* nixos/buildkite-agent: put each agent in its own private /tmp

Workaround for https://github.com/buildkite/agent/issues/2916, but
probably still a good idea.
2024-08-02 21:59:32 +02:00
Florian Sesser
828eb8c574 Gitlab-Runner: Add --post-get-sources-script
`--post-get-sources-script` has been added a while ago.  This
makes it available via the nix configuration.

See https://about.gitlab.com/blog/2023/03/27/changes-to-the-preclonescript/
2024-07-02 14:46:48 +00:00
Florian Sesser
42a2c268f6 preCloneScript is now preGetSourcesScript
The --pre-clone-script service configuration has been deprecated (https://docs.gitlab.com/ee/update/deprecations.html#deprecation-and-planned-removal-for-ci_pre_clone_script-variable-on-gitlab-saas) and replaced by --pre-get-sources-script (https://about.gitlab.com/blog/2023/03/27/changes-to-the-preclonescript/).
2024-07-02 13:23:30 +00:00
Janik H.
76cd1d2211 maintainers: drop janik
I guess my time has come as well...

With this commit, I'm not just dropping my maintainer entry, but I'm also
resigning from my duties as a board observer and NixCon project lead.
I also terminated my Summer of Nix contract today.
I'll also stop hosting the local NixOS meetup.

The only "project" I'll finish under the NixOS Foundation umbrella is
Google Summer of Code because the mentees aren't even remotely
responsible for why I'm leaving, and it would be unfair to leave them
hanging.

I'm grateful for all the things I was able to learn, for all the experiences
I could gather, and for all the friends I made along the way.
NixOS is what makes computers bearable for me, so I'll go and work on
some fork (*something something* you always meet twice in life).
2024-07-02 02:36:42 +02:00
Yaya
6f211d899d nixos/gitlab-runner: Add support runner authentication tokens
Support for *runner registration tokens* is deprecated since GitLab
16.0, has been disabled by default in GitLab 17.0 and will be removed in
GitLab 18.0, as outlined in the [GitLab documentation].

It is possible to [re-enable support for runner registration tokens]
until GitLab 18.0, to prevent the registration workflow from
breaking.

*Runner authentication tokens*, the replacement for registration tokens,
have been available since GitLab 16.0 and are expected to be defined in
the `CI_SERVER_TOKEN` environment variable, instead of the previous
`REGISTRATION_TOKEN` variable.

This commit adds a new option
`services.gitlab-runner.services.<name>.authenticationTokenConfigFile`.
Defining such option next to
`services.gitlab-runner.services.<name>.registrationConfigFile` brings
the following benefits:
- A warning message can be emitted to notify module users about the
  upcoming breaking change with GitLab 17.0, where *runner registration
  tokens* will be disabled by default, potentially disrupting
  operations.
- Some configuration options are no longer supported with *runner
  authentication tokens* since they will be defined when creating a new
  token in the GitLab UI instead. New warning messages can be emitted to
  notify users to remove the affected options from their configuration.
- Once support for *registration tokens* has been removed in GitLab 18,
  we can remove
  `services.gitlab-runner.services.<name>.registrationConfigFile` as
  well and make module users configure an *authentication token*
  instead.

This commit changes the option type of
`services.gitlab-runner.services.<name>.registrationConfigFile` to
`with lib.types; nullOr str` to allow configuring an authentication
token in
`services.gitlab-runner.services.<name>.authenticationTokenConfigFile`
instead.

A new assertion will make sure that
`services.gitlab-runner.services.<name>.registrationConfigFile` and
`services.gitlab-runner.services.<name>.authenticationTokenConfigFile`
are mutually exclusive. Setting both at the same time would not make
much sense in this case.

[GitLab documentation]: https://docs.gitlab.com/17.0/ee/ci/runners/new_creation_workflow.html#estimated-time-frame-for-planned-changes
[re-enable support for runner registration tokens]: https://docs.gitlab.com/17.0/ee/ci/runners/new_creation_workflow.html#prevent-your-runner-registration-workflow-from-breaking
2024-06-25 17:06:45 +02:00