Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NixOS Integration Tests: Enable again for darwin #303150

Merged
merged 1 commit into from
Apr 10, 2024

Conversation

tfc
Copy link
Contributor

@tfc tfc commented Apr 10, 2024

Description of changes

This commit: 7b602cf

...disabled NixOS integration tests from running on macOS, while this is now generally supported thanks to @Gabriella439.

This PR re-enables darwin as a supported platform. I had customers pinging me why tests don't work on macos any longer... Can we please merge this in sensible time?

Generally, i feel like the supported lists of platform does not make sense to be configurable on the test level? the other meta options seem fine to have so authors of integration tests can define if they are maintainers, and description etc - but the list of supported systems?

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@tfc tfc requested review from K900, roberth and Gabriella439 April 10, 2024 16:02
@github-actions github-actions bot added 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: testing Tooling for automated testing of packages and modules labels Apr 10, 2024
@K900 K900 merged commit a90b106 into NixOS:master Apr 10, 2024
7 of 8 checks passed
@RaitoBezarius
Copy link
Member

Some tests does not make sense on some architectures, e.g. BIOS only exist on x86_64.

@tfc
Copy link
Contributor Author

tfc commented Apr 10, 2024

@RaitoBezarius thank you for the quick merge! EDIT: Sorry @K900 merged, thank you. :)

Some tests does not make sense on some architectures, e.g. BIOS only exist on x86_64.

That is uncontroversial, but this meta field describes the compatibility of the test runner, not the test itself.

@tfc tfc deleted the nixos-integration-tests-macos-platforms branch April 10, 2024 16:56
@cole-h
Copy link
Member

cole-h commented Apr 10, 2024

FYI: this broke ofborg's eval:

$ nix-env -qaP --no-name --out-path --arg checkMeta false --argstr path $PWD -f outpaths.nix --show-trace
error:
       … while evaluating call site

       at «none»:0: (source not available)

       … while calling anonymous lambda

       at /root/nixpkgs/outpaths.nix:48:12:

           47|   tweak = lib.mapAttrs
           48|     (name: val:
             |            ^
           49|       if name == "recurseForDerivations" then true

       … while evaluating call site

       at /root/nixpkgs/lib/attrsets.nix:1214:43:

         1213|     f:
         1214|     listToAttrs (map (n: nameValuePair n (f n)) names);
             |                                           ^
         1215|

       … while calling anonymous lambda

       at /root/nixpkgs/pkgs/top-level/release-lib.nix:145:6:

          144|   testOnCross = crossSystem: metaPatterns: f: forMatchingSystems metaPatterns
          145|     (system: hydraJob' (f (pkgsForCross crossSystem system)));
             |      ^
          146|

       … while evaluating call site

       at /root/nixpkgs/pkgs/top-level/release-lib.nix:145:14:

          144|   testOnCross = crossSystem: metaPatterns: f: forMatchingSystems metaPatterns
          145|     (system: hydraJob' (f (pkgsForCross crossSystem system)));
             |              ^
          146|

       … while calling 'hydraJob'

       at /root/nixpkgs/lib/customisation.nix:388:14:

          387|   */
          388|   hydraJob = drv:
             |              ^
          389|     let

       … while evaluating the attribute 'outPath'

       at /root/nixpkgs/lib/customisation.nix:404:13:

          403|           value = commonAttrs // {
          404|             outPath = output.outPath;
             |             ^
          405|             drvPath = output.drvPath;

       error: attribute 'out' missing

       at /root/nixpkgs/lib/customisation.nix:401:22:

          400|       makeOutput = outputName:
          401|         let output = drv.${outputName}; in
             |                      ^
          402|         { name = outputName;

Revert is in #303187

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 6.topic: testing Tooling for automated testing of packages and modules
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants