142 Commits

Author SHA1 Message Date
Austin Horstman
7d8127d308 flake: track nixpkgs-unstable 2026-05-29 19:01:27 -05:00
Austin Horstman
0f08a37c31 ci: fix module count output
Commit 3c71cec05d changed the labeler workflow to use grep -c, but grep -c still exits with status 1 when no lines match.

That made the fallback echo another 0, so COUNT became a multi-line value and the write to GITHUB_OUTPUT failed. Use true as the fallback to preserve grep's single-line count while allowing the no-match case.
2026-05-18 09:07:50 -05:00
Robert Helgesson
92a8736142 ci: quote some shell variables 2026-05-15 23:21:38 -05:00
Robert Helgesson
3c71cec05d ci: use grep -c instead of grep|wc -l 2026-05-15 23:21:38 -05:00
Austin Horstman
6f59831b23 ci: only parse/format on linux
Will not differ between platforms, use the faster ci runner for these
checks Also fix missing parse condition in install-nix-action
2026-04-25 16:14:15 -05:00
Austin Horstman
7076272297 ci: bound runtime and force sandboxed builds
The test workflow currently relies on GitHub Actions defaults for both
job lifetime and Nix sandboxing. That is acceptable when everything
behaves, but it makes failures noisier: a hung job can run indefinitely
until the platform kills it, and the macOS leg inherits a weaker sandbox
default than Linux.

Add explicit timeout-minutes values to the lightweight change-detection
job and the main test matrix job, and pass sandbox = true through
install-nix-action. The sandbox setting is primarily about making the
macOS runner match the stricter execution model we already expect on
Linux.
2026-04-21 08:24:02 -05:00
Austin Horstman
6658732d33 ci: drop default workflow token permissions
The test workflow only needs to evaluate and build repository code. It
does not write statuses, labels, comments, or pull request metadata, so
keeping GitHub's default token scope is broader than necessary.
2026-04-21 08:24:02 -05:00
Austin Horstman
67f2a145a9 ci: run both parse checks in one keep-going step
The parse workflow currently runs the nix and Lix checks as two separate
steps. If the first parser fails, GitHub Actions stops the job before
the second parser runs, which hides useful failure information and
weakens the signal from the new parse gate.

Collapse the two steps into a single invocation that builds both parse
derivations with --keep-going. This keeps the job surface small,
preserves the dedicated parse trigger, and ensures both parser variants
are attempted on every relevant run.
2026-04-21 08:24:02 -05:00
Austin Horstman
c555a4a34a ci: add nix and lix parse checks
Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
Co-authored-by: piegames <git@piegames.de>
2026-04-20 16:46:54 -05:00
Jamie Magee
5843fa302b ci: migrate to Dependabot for nix flake updates 2026-04-13 22:03:14 -05:00
Austin Horstman
34cb41efe4 ci: fix labeler file count logic 2026-04-07 23:27:55 -05:00
Austin Horstman
f0c13b0ebc ci: limit labeler to small pull requests 2026-04-07 23:14:48 -05:00
dependabot[bot]
90913f8313 ci: bump cachix/cachix-action from 16 to 17
Bumps [cachix/cachix-action](https://github.com/cachix/cachix-action) from 16 to 17.
- [Release notes](https://github.com/cachix/cachix-action/releases)
- [Commits](https://github.com/cachix/cachix-action/compare/v16...v17)

---
updated-dependencies:
- dependency-name: cachix/cachix-action
  dependency-version: '17'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-23 09:02:52 -05:00
dependabot[bot]
57d5560ee9 ci: bump actions/create-github-app-token from 2 to 3
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 2 to 3.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](https://github.com/actions/create-github-app-token/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: '3'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 18:24:16 +01:00
dependabot[bot]
ca53f083db ci: bump dorny/paths-filter from 3 to 4
Bumps [dorny/paths-filter](https://github.com/dorny/paths-filter) from 3 to 4.
- [Release notes](https://github.com/dorny/paths-filter/releases)
- [Changelog](https://github.com/dorny/paths-filter/blob/master/CHANGELOG.md)
- [Commits](https://github.com/dorny/paths-filter/compare/v3...v4)

---
updated-dependencies:
- dependency-name: dorny/paths-filter
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-16 14:12:48 +01:00
Austin Horstman
40deed4ffe ci: validate-maintainers all-maintainers update
Might as well, can't hurt.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-01-08 13:57:12 -05:00
Austin Horstman
2db6bcc7ca ci: validate-maintainers on flake.lock update
Keep missing conflicts from nixpkgs updates.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-01-08 13:57:12 -05:00
dependabot[bot]
f575cb24f6 ci: bump korthout/backport-action from 3 to 4
Bumps [korthout/backport-action](https://github.com/korthout/backport-action) from 3 to 4.
- [Release notes](https://github.com/korthout/backport-action/releases)
- [Commits](https://github.com/korthout/backport-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: korthout/backport-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-15 22:38:37 -06:00
Austin Horstman
9651819d75 ci: update checkout and update-flake-lock
https://github.com/DeterminateSystems/update-flake-lock/releases/tag/v28
updated with checkout v6 support.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-11-26 16:02:49 -06:00
Austin Horstman
8220473f95 ci: revert actions/checkout to v5 due to update-flake-lock incompatibility
Root cause: DeterminateSystems/update-flake-lock@v27 uses
peter-evans/create-pull-request@v6.0.5 internally, which is incompatible
with actions/checkout@v6's new credential storage mechanism.

The Problem Chain:
- actions/checkout@v6 moved credentials from .git/config to $RUNNER_TEMP
  (security improvement)
- peter-evans/create-pull-request@v6.0.5 cannot access credentials from
  the new $RUNNER_TEMP location
- This causes exit code 128 when update-flake-lock tries to create PRs

The Fix:
- create-pull-request@v7.0.9 fixed v6 compatibility
- However, update-flake-lock@v27 (released July 2025) hasn't upgraded yet
- Reverting to v5 restores working credential access

Next Steps:
- Can upgrade to v6 once update-flake-lock uses create-pull-request@v7.0.9+
  - https://github.com/DeterminateSystems/update-flake-lock/pull/224
- Dependabot configured to ignore v6 upgrades until compatibility is fixed

Fixes: https://github.com/nix-community/home-manager/actions/runs/19712979574
See: https://github.com/peter-evans/create-pull-request/issues/690

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-11-26 12:47:12 -06:00
Austin Horstman
cc0425becf ci: disable fail fast on flake update
We don't need to block a channels flake update because of a bug in
another.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-11-26 11:59:27 -06:00
Austin Horstman
089d5bf615 ci: update release in matrix
New stable branch

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-11-26 11:16:38 -06:00
dependabot[bot]
7702d14879 ci: bump actions/checkout from 5 to 6
Bumps [actions/checkout](https://github.com/actions/checkout) from 5 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-23 23:44:50 -06:00
Austin Horstman
36a7a673c0 ci: backport set permissions
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-10-23 19:16:57 -05:00
Austin Horstman
5890176f85 ci: backport use ubuntu latest
Doesn't need to be fixed and can follow same runners we use elsewhere.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-10-01 10:13:36 -05:00
dependabot[bot]
26993d87fd ci: bump actions/labeler from 5 to 6
Bumps [actions/labeler](https://github.com/actions/labeler) from 5 to 6.
- [Release notes](https://github.com/actions/labeler/releases)
- [Commits](https://github.com/actions/labeler/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/labeler
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-08 21:33:04 -05:00
dependabot[bot]
5ca4c81fd5 ci: bump actions/checkout from 4 to 5 (#7690)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-17 22:47:24 -05:00
Austin Horstman
e4b032ba51 ci: re-enable home manager install and uninstall tests on darwin
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
Austin Horstman
a07400a2e5 ci: don't duplicate test runs on github
We have moved towards running more tests on buildbot for better
performance. Don't duplicate efforts on github actions.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
Austin Horstman
e45ff5651c ci: split tests into chunks
We have lots of tests and would like to add more. However, adding more
testing coverage comes at the cost of a slower CI when we run them
sequentially. This adds test outputs that are chunked however we'd like
to tune for batch sizes. Allowing us to create a parallelized CI
workflow.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-27 23:02:18 -05:00
dependabot[bot]
847711c7ff ci: bump DeterminateSystems/update-flake-lock from 26 to 27
---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-version: '27'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-22 12:35:35 +02:00
Austin Horstman
defabc11ab ci: move validate maintainers logic to lib
Allow easily running the individual checks outside of GHA for easier
testing/modification.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-17 15:15:39 -05:00
Austin Horstman
f14ef40c45 ci: dont run github_pages on forks
Limit to not automatically run on forks and allow ad-hoc runs.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-15 13:11:12 -05:00
Austin Horstman
6613b6ce49 ci: update-maintainers include eval diff
Show evaluated comparison in the PR we create.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-15 13:08:23 -05:00
Austin Horstman
a1c0a34938 ci: fix tag-maintainers (#7480)
accidentally broke when refactoring

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-15 11:06:17 -05:00
Austin Horstman
2a8220dd92 ci: fix tag-maintainers (#7448)
copy pasta error trying to just copy my fixes from another repo

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-12 21:03:05 -05:00
Austin Horstman
f2795aa053 ci: tag-maintainers further refactoring (#7446)
cleaning up more after further testing and work in nixvim version

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-12 18:07:51 -05:00
Austin Horstman
6d8ed2b4fc ci: tag-maintainer workflow refactor (#7436)
Break the workflow into multiple scripts to make it easier to test /
maintain. Also fix the remove reviewer process to not review reviews
from people that were manually requested.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-11 15:20:37 -05:00
Austin Horstman
9d343f0880 ci: update-maintainers cleanup / tweaks (#7433)
Better support updating existing PRs and summary of changes in workflow
summary. Tested in nixvim.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-11 12:17:37 -05:00
dependabot[bot]
1edfb62244 ci: bump DeterminateSystems/update-flake-lock from 25 to 26
Bumps [DeterminateSystems/update-flake-lock](https://github.com/determinatesystems/update-flake-lock) from 25 to 26.
- [Release notes](https://github.com/determinatesystems/update-flake-lock/releases)
- [Commits](https://github.com/determinatesystems/update-flake-lock/compare/v25...v26)

---
updated-dependencies:
- dependency-name: DeterminateSystems/update-flake-lock
  dependency-version: '26'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-07-08 09:48:13 -05:00
Austin Horstman
18e1f7fbce ci: validate maintainers also checks for duplicate maintainers
We dont want need to maintain duplicate entries for maintainers in HM
that already exist in Nixpkgs. Add a check that calls out users that
don't need an entry in our internal list.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-04 09:20:48 -05:00
Austin Horstman
402333d5ec ci: concurrency protect tag flow
We just need to run it once properly and dont need to keep running it
for every push until the last.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 17:06:33 -05:00
Austin Horstman
03c3576f8b ci: remove unneeded reviewers
We can remove the review from someone if they are no longer affected in
a PR.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 17:06:33 -05:00
Austin Horstman
7582cbfabc ci: check for new maintainers on updates
We want to ping maintainers whenever files are affected. Right now it
requires changing a PR to a draft and reopening, but we should be more
clever and request the review whenever the file is updated.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 17:06:33 -05:00
Austin Horstman
7044c3eced ci: tag-maintainers fix fetching maintainers (#7380)
Was relying on flawed logic and fragile parsing to identify maintainers
on changed files. Rework to use nix eval to grab the `meta.maintainers`
to use when requesting a review.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 16:29:14 -05:00
Austin Horstman
d03fa2d84c ci: generate-all-maintainers use nix eval update
Previously, we had to hack together some string matching to identify and
retrieve the maintainers in the repo. We can just eval the modules to
retrieve the list of maintainers more accurately.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 15:23:58 -05:00
Austin Horstman
28639e6470 ci: cancel previous runs (#7378)
Cancel existing runs when a new push happens so we don't unnecessarily
run jobs that are irrelevant.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-03 14:05:44 -05:00
Austin Horstman
426b405d97 ci: add validation workflow for maintainers list
We need to make sure that we don't insert invalid maintainers otherwise
it breaks the RFC39 invite workflow. Check that we have valid nix and
the required attributes are able to be parsed properly.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 22:25:47 -05:00
Austin Horstman
66de606f48 ci: update all-maintainers on merge
We want to update the master list for RFC39 invites on master after a
change is merged in.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 22:25:47 -05:00
Austin Horstman
25f003f8a9 ci: tag maintainers automatically for PR reviews (#6921)
Want to create an easier way to notify maintainers that someone is
working on their module. Added a workflow for requesting a review from any maintainers that have joined the `home-manager-maintainers` team in the organization. 

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-07-02 14:45:27 -05:00