Commit graph

48 commits

Author SHA1 Message Date
Matt Sturgeon
6d10fc0c87
flake: partition dev dependencies
This removes the need for end-users to manually set
`nixvim.inputs.devshell.follows = ""` (etc)

We offload evaluation of some of our flake modules into a `dev`
partition submodule.
- When its not needed, this submodule is not evaluated.
- When it is needed, it fetches extra inputs from `flake/dev/flake.nix`
  as part of evaluating the submodule.

See https://flake.parts/options/flake-parts-partitions.html
2025-02-23 17:23:57 +00:00
Matt Sturgeon
5281e8c583
ci/update: allow disabling re-applying commits
Most of the time we want to re-apply "manual"/"additional" commits from
the already open PR, however it is possible we may wish to run the CI
without doing so.

Add an on-by-default tickbox to toggle the `re_apply` step.
2025-02-05 17:06:17 +00:00
Matt Sturgeon
61fdbe2647
ci/update: fix re-apply commit order
We need to reverse the `rev-list` output so that the commits are
re-applied in the correct order; oldest first.
2025-02-05 16:51:58 +00:00
Matt Sturgeon
93df574b42
ci/update: fix create pr step not having $pr_num 2025-01-30 21:24:32 +00:00
Matt Sturgeon
7f5dc96b83
ci/update: re-apply manual commits from open PR
Instead of comparing the nixpkgs input revision, we can re-apply any
manually committed changes and then check if any files are different
before pushing.
2025-01-30 21:24:25 +00:00
Matt Sturgeon
f9904d22df
ci/update: don't request review on the PR
@github-actions[bot] doesn't have access to nix-community teams, so it
can't request @nix-community/nixvim review the PR.
2025-01-30 19:20:44 +00:00
Matt Sturgeon
f028201847
ci/update: don't assign a team to the PR
Only users can be assigned to PRs, not teams.
2025-01-30 19:01:46 +00:00
Matt Sturgeon
8bf206eb75
ci/update: drop dependency on peter-evans/create-pull-request
We can create/update PRs using the `gh pr` command, no need for a third
party dependency.
2025-01-30 18:04:58 +00:00
Matt Sturgeon
bffee37f57
ci/update: use if then else for setting cancelled step output
The simpler `[[ ]] &&` construct can exit non-zero, causing the workflow
to fail.
2025-01-30 15:57:24 +00:00
Matt Sturgeon
818c2906e9
ci/update: cleanup summary step 2025-01-28 13:52:08 +00:00
Matt Sturgeon
62a0dfbe5d
ci/update: cancel gracefully
Cancelling via `exit 1` will mark the workflow as "failed". Instead we
can write a `cancelled` step output and have all the following steps
be conditional.
2025-01-28 13:52:07 +00:00
Matt Sturgeon
4652e38ee6
ci/update: add input checkbox for checking nixpkgs was bumped
This is done by default when scheduled, but can be explicitly enabled
when running manually.
2025-01-28 13:01:50 +00:00
Matt Sturgeon
c3d95240c4
ci/update: check against base branch if no PR is open 2025-01-28 13:01:20 +00:00
Matt Sturgeon
5fda6e093d
ci/update: slightly cleanup cancellation summary 2025-01-24 19:39:01 +00:00
Matt Sturgeon
0b6be86756
ci/update: fix graphql formatting 2025-01-24 16:48:08 +00:00
Matt Sturgeon
f4ba44225e
ci/update: slightly simplify jq query 2025-01-24 16:48:07 +00:00
Matt Sturgeon
bd3184f495
ci/update: check whether a PR is already open 2025-01-24 16:24:35 +00:00
Matt Sturgeon
85bef9e191
ci/update: fix getFlake expecting an absolute path
Pass in `$PWD` instead of `.`, because `builtins.getFlake` does not
permit relative paths.
2025-01-23 14:58:47 +00:00
Matt Sturgeon
7dc67410bb
ci/update: cancel scheduled runs that don't bump nixpkgs
This should help mitigate spammy force-pushes that don't actually update
the nixpkgs input.

This only affects _scheduled_ runs. Manually triggered updates will
always force-push to the update branch.
2025-01-23 02:54:11 +00:00
Matt Sturgeon
a2a4befdaf
ci/update: cleanup names & comments 2025-01-22 20:49:50 +00:00
Matt Sturgeon
6046ad79f0
ci/update: schedule main branch daily, other branches weekly
Split scheduling other branches into a dedicated workflow. The main
update workflow is no longer responsible for triggering the workflow on
_other_ branches.
2025-01-22 20:15:57 +00:00
Gaetan Lepage
1036b8f8b6 ci/update: remove nixos-24.05 update action 2025-01-20 07:16:02 +00:00
Matt Sturgeon
cf647bc045
ci: drop 24.05 support 2025-01-19 10:32:11 +00:00
Gaetan Lepage
880a570588 ci: add support for new stable nixos-24.11 branch 2024-11-30 23:33:30 +01:00
Matt Sturgeon
c1271fa10a
ci: fix nix-install-action versions
`30` -> `v30` 😭
2024-11-22 22:37:05 +00:00
Matt Sturgeon
fb49a740f8
ci: bump nix-install-action 2024-11-22 21:21:36 +00:00
Austin Horstman
78fc4be6a8
workflows/update: only run upstream 2024-08-17 14:44:48 -05:00
Matt Sturgeon
83a8109ec4
ci/update: make steps optional
Allow toggling off the flake.lock or generate files steps.
2024-08-03 21:56:41 +01:00
Matt Sturgeon
d3cb750e6a
update-scripts: move out of flake
See the explanation in the new update-scripts/README.md file.
2024-08-03 21:56:40 +01:00
Matt Sturgeon
b9ed900032
github/update: remove broken team-reviewers
> Unable to request reviewers.
> If requesting team reviewers a 'repo' scoped PAT is required.
2024-07-15 12:17:30 +01:00
Matt Sturgeon
cff06c8570
github/update: improve summary for generated files 2024-07-15 12:11:28 +01:00
Matt Sturgeon
bd1dddaf50
github/update: run update on the respective branch
- Run the `update.yml` workflow on the triggered branch, replace the
  job matrix with a conditional step that runs update on nixos-24.05.
- Added a `cancel-in-progress` concurrency group.
- Disabled committing in PR action (using negative add-paths).
2024-07-15 12:11:27 +01:00
Matt Sturgeon
abc409c16f
github: refactor update CI workflow
- Rename workflow to simply "update"
- Drop the DeterminateSystems/update-flake-lock action
- Instead use `nix flake update --commit-lock-file`
- Also use `generate-files`'s `--commit` option
- Use peter-evans/create-pull-request to open a PR
2024-07-10 08:30:47 +01:00
Matt Sturgeon
aad2e32b5a treewide: reformat 2024-07-08 16:24:47 +00:00
traxys
668894b6d3 github: Re-generate the files on updates 2024-07-05 13:34:44 +02:00
Gaetan Lepage
f1289fadee misc/post-release 24.05: update workflows 2024-06-06 14:46:34 +02:00
traxys
9697385115 actions: Update both stable & unstable flake.lock 2024-05-26 20:03:51 +02:00
Gaetan Lepage
7dae5228f1 ci/update: update actions to latest versions 2024-03-23 14:18:25 +01:00
Gaetan Lepage
ab9b6abc22 ci/update: remove useless autogenerated-configs stuff 2023-11-23 22:42:04 +01:00
Gaetan Lepage
2a849a4c35 ci: switch to actions/checkout@v4 2023-11-23 15:05:58 +01:00
Gaetan Lepage
e5cc0c093b ci: switch back to GitHub runner 2023-11-23 09:55:45 +01:00
Gaetan Lepage
369254237a github-actions/update: fix nix installation 2023-10-09 12:13:06 +02:00
Gaetan Lepage
7eb1a85ccb github-workflow: add a timeout for jobs 2023-10-03 14:18:18 +02:00
Gaetan Lepage
47b72e41dd github-worflow: Switch to "Namespace" runner for CI 2023-10-01 18:12:54 +02:00
traxys
33cffcb0fd
plugins/lsp: Extract rust-analyzer options from the source directly (#562)
This directly reads the package.json file in pkgs.rust-analyzer.src in
order to generate the list of options for rust-analyzer.

This avoids the need for a generator script, and makes sure that it is
always in sync.
2023-08-28 17:28:12 +02:00
traxys
1d48986c41
workflows: Update autogenerated configs alongside the flake.lock (#555) 2023-08-28 13:07:30 +02:00
Gaetan Lepage
43557f60d5 workflow/update-flake-action: add GH_TOKEN to bypass GH limitation and directly run tests 2023-08-28 11:04:03 +02:00
traxys
246f811084
workflows: Add a workflow to update the flake.lock (#391) 2023-05-27 00:04:10 +02:00