summaryrefslogtreecommitdiff
path: root/ci (follow)
Commit message (Expand)AuthorAgeFilesLines
* workflows/build: build nixpkgs tarball•••This adds a build job for the tarball, which might help uncover eval issues on attributes not normally touched by Eval, aka those added in `pkgs/top-level/packages-config.nix`. Wolfgang Walther2025-07-241-1/+15
* ci/github-script/labels: limit cutoff to max 1 day (#426946)Wolfgang Walther2025-07-211-4/+10
|\
| * ci/github-script/labels: limit cutoff to max 1 day•••It has only happened once, but the GitHub API suddenly returned a workflow run from a few weeks back. This lead to quickly hitting the rate limit for search requests. Prevent this from happening by going back a day max for the "recently updated" case. After roughly a day, every PR will have been touched by the regular batch processing anyway. Also save a few API requests, by taking bigger chunks of the search result. Wolfgang Walther2025-07-201-4/+10
* | ci/github-script/commits: harden code block rendering•••To avoid rendering issues when diffing a markdown file with these markers in context, just increase the markers length. Wolfgang Walther2025-07-201-2/+2
* | Revert "ci/github-script/commits: keep formatting for diffs of markdown blocks"•••This reverts commit b19798c8b03cc378373aac1a9e01cfdbb5f12305. It lead to messed up formatting of the diff. Wolfgang Walther2025-07-201-8/+3
|/
* nixfmt[-rfc-style]: unstable -> 1.0.0 (#425068)Wolfgang Walther2025-07-181-1/+1
|\
| * treewide: nixfmt-rfc-style -> nixfmt•••Except: - Instances in documentation, because people in older versions can't switch to nixfmt yet due to it having pointed to nixfmt-classic before - In code that runs based on a CI Nixpkgs version, which is also a bit older still - In update script shebangs, because many of them don't pin Nixpkgs, and run with whatever is in NIX_PATH (and it's not easy to fix this, see https://github.com/NixOS/nixpkgs/issues/425551) Silvan Mosberger2025-07-151-1/+1
* | ci/github-script/commits: various fixes and improvements (#425789)Wolfgang Walther2025-07-172-19/+109
|\ \
| * | ci/github-script/commits: shorten and clarify review comment•••Also following the one-sentence-per-line rule now. Wolfgang Walther2025-07-161-4/+7
| * | ci/github-script/commits: fix job_url•••This broke when we moved the check-cherry-picks workflow into the bigger PR workflow. At this time, the "workflow run" became the whole PR workflow, which includes many more than just 1 job, thus the assumption in `jobs[0]` doesn't hold anymore. Wolfgang Walther2025-07-161-2/+3
| * | ci/github-script/commits: block on errors•••Most of the checks we do for cherry-picks are dismissable warnings, with one exception: When a commit hash has been found, but this hash is not available in any of the pickable branches, we raise this with severity=error. This should also *block* the merge and not be dismissable. That's because this is a fixable issue in every case. Wolfgang Walther2025-07-161-9/+88
| * | ci/github-script/commits: keep formatting for diffs of markdown blocks•••Previously, when the diff contained a context line with ```, this would end the code block and entirely break the markdown rendering. Now we use the html code blocks provided by `core.summary` and properly escape the content, so that it never escapes via html tags. Wolfgang Walther2025-07-161-3/+8
| * | ci/github-script/commits: ignore whitespace on diff•••This reduces noise that the cherry-pick reviews produce when formatting related conflicts had to be resolved. We only do this in the length-limited review comment, though. All changes, including whitespace, can still be double-checked in the job log if needed. Wolfgang Walther2025-07-161-1/+2
| * | ci/github-script/commits: add comment about --creation-factorWolfgang Walther2025-07-161-0/+1
* | | ci/github-script/commits: init from ci/check-cherry-picks (#425449)Wolfgang Walther2025-07-1610-184/+246
|\| |
| * | ci/github-script/commits: init from ci/check-cherry-picks•••This turns the check-cherry-pick script into a github-script based JavaScript program. This makes it much easier to extend to check reverts or merge commits later on. Wolfgang Walther2025-07-167-174/+242
| * | ci/github-script: use real @actions/core•••This allows building markdown summaries, which is hard to mock. Wolfgang Walther2025-07-154-12/+6
* | | ci/github-script: move from ci/labels; allow single PR testing and non-dry mo...Wolfgang Walther2025-07-1513-121/+169
|\| | | |/ |/|
| * ci/github-script: add gh dependency to dev shellWolfgang Walther2025-07-152-2/+4
| * ci/github-script: allow running without dry modeWolfgang Walther2025-07-141-4/+5
| * ci/github-script: allow running for single PR•••Makes specific tests in the upstream repo easier to do. Wolfgang Walther2025-07-141-5/+16
| * ci/github-script: extract common withRateLimit.js•••This can and should be re-used across different scripts. Wolfgang Walther2025-07-142-63/+69
| * ci/github-script: default to commonjs•••Since all github-scripts need to be written in commonjs, we now default to it by not setting package.json. Support from editors for .js files is slightly better than .cjs. To still allow using module imports in the test runner script, we trick node into loading the script itself as a module again via `--import ./run`. Wolfgang Walther2025-07-145-6/+4
| * ci/github-script: add commander CLI interface•••This makes it easier to add additional features. Wolfgang Walther2025-07-144-37/+58
| * ci/github-script: move from ci/labels•••This just moves things around to use less specific naming - `labels` is only *one* script that can potentially be run locally while still being written in github-script. Later, we can add more. Wolfgang Walther2025-07-1410-5/+14
* | Merge master into staging-nextnixpkgs-ci[bot]2025-07-121-1/+1
|\|
| * workflows/labels: label rebuilds immediately•••This fixes labeling in the context of the `pull_request` trigger. Of course, this was supposed to immediately label rebuilds after eval finishes, but we somehow lost this along the way. Rebuilds are still labeled fairly soon, because the scheduled trigger will pick up the same PR within 10 minutes again and then apply the rebuild labels. But of course, immediate is better. The reason this happened is, that we're looking at `item.pull_request` only. This is the correct distinction between "issue items" and "pull request items", which we both get back from the /issues endpoint. But the payload for the `pull_request*` event doesn't contain this, so labeling in this case was treated like an issue and skipped the whole pull request part. Wolfgang Walther2025-07-121-1/+1
* | Merge remote-tracking branch 'origin/master' into staging-nextK9002025-07-099-0/+2447
|\|
| * ci/labels: run in dry mode locally•••To avoid mistakes when developing and testing against the upstream repo. Wolfgang Walther2025-07-083-13/+18
| * ci/labels: run prettier•••This is the result of: prettier --no-semi --single-quote Wolfgang Walther2025-07-081-126/+183
| * ci/labels: init from workflows/labels•••Moves the labels job into a separate ci/ subfolder to run it locally. This eases debugging *a lot*. Wolfgang Walther2025-07-089-0/+2385
* | Merge staging-next into stagingnixpkgs-ci[bot]2025-06-301-1/+3
|\|
| * nixVersions.nix_2_3: add knownVulnerabilitiesAlyssa Ross2025-06-301-1/+3
* | Merge staging-next into stagingnixpkgs-ci[bot]2025-06-302-8/+14
|\|
| * ci/eval/README.md: one sentence per lineWolfgang Walther2025-06-291-4/+9
| * ci/README.md: one sentence per lineWolfgang Walther2025-06-291-4/+5
* | Merge remote-tracking branch 'origin/staging-next' into stagingK9002025-06-271-1/+3
|\|
| * ci/check-cherry-picks: fix chained cherry-picks•••When backporting a PR from master -> 25.05 -> 24.11 in a chain, the last cherry-pick will have two references to different commits in it. If there was conflict resolution in the first step, the diff will show up again in the last step. This can be fixed by comparing against the right hash - always the last one. Wolfgang Walther2025-06-271-1/+3
* | Merge remote-tracking branch 'origin/staging-next' into stagingK9002025-06-231-0/+4
|\|
| * ci/OWNERS: add kernel team to relevant files•••This should prevent situations like https://github.com/NixOS/nixpkgs/pull/389291 in future where a new kernel variant was added without any discussion with the kernel team. Alyssa Ross2025-06-231-0/+4
* | .editorconfig: two spaces for .js files•••Most other scripting languages we use in tree have the same. Wolfgang Walther2025-06-231-4/+0
|/
* workflows/{check,reviewers}: don't run on staging-like PRs (#418496)Wolfgang Walther2025-06-233-0/+95
|\
| * workflows/pr: refactor base/head branch decision making•••Some jobs purposefully only run on certain base or head branches. By centralizing the logic, parts of it can easily be re-used later. Also, this gives them an explicit name and thus makes them easier to understand. Wolfgang Walther2025-06-223-0/+95
* | ci/eval: fix comparing to null in getLabels•••Check if `to` is null _before_ comparing it to `rebuildCount`. Matt Sturgeon2025-06-221-1/+1
* | workflows/labels: manage labels with a single API call•••Instead of deleting each label separately and then making another call to add new labels, this replaces all labels at once, thus saving API calls in some cases. Also, the labels are now managed in object-style compared to the array-style before. This allows putting all the knowledge about each label into a single place instead of in multiple places. For example, the rebuild labels had to be special cased in the workflow before - and the nix code to compare had to match that. Also, the approval labels had to be considered in the `before` and `after` phases. The next commit shows how easy it is to add a new label now. Wolfgang Walther2025-06-222-59/+44
* | workflows/labels: various fixes (#418504)Wolfgang Walther2025-06-211-1/+1
|\ \
| * | ci/eval/compare: fix rebuild-stdenv labels•••Those have not been working since before the migration from OfBorg. Those `rebuildsByKernel` are an attrset of lists coming from `groupByKernel` (also see lengthy comment at the top of the file) - thus we need `lib.elem` instead. Wolfgang Walther2025-06-211-1/+1
| |/
* | teams/ci: init (#416459)Wolfgang Walther2025-06-201-3/+3
|\ \ | |/ |/|
| * teams/ci: initWolfgang Walther2025-06-201-3/+3
| * OWNERS: drop security team from CI•••To reduce the number of notifications. Wolfgang Walther2025-06-201-3/+3