about summary refs log tree commit diff
path: root/nixos/lib
AgeCommit message (Collapse)AuthorFilesLines
2022-10-25nixos/make-options-doc: fix JSON generation on DarwinWinter1-1/+5
2022-10-23nixos/unitGenerator: fix generation for nspawn filesChristian Kögler1-3/+3
2022-10-21Merge master into staging-nextgithub-actions[bot]1-5/+13
2022-10-20nixos/lib.escapeSystemdPath: Implement the correct algorithm for escaping ↵Daniel Olsen1-5/+13
names in systemd units Co-authored-by: ajs124 <git@ajs124.de>
2022-10-19Merge branch 'master' into staging-nextJan Tojnar3-5/+11
; Conflicts: ; pkgs/development/tools/codespell/default.nix codespell 2.2.2 switched to pyproject & setuptools_scm: https://github.com/codespell-project/codespell/pull/2523
2022-10-18Merge pull request #196281 from hercules-ci/restore-nixos-test-dxRobert Hensing2-3/+9
nixos: Restore test DX
2022-10-18Merge pull request #194035 from Ma27/show-option-quotingRobert Hensing1-2/+2
lib/options/showOption: fix quoting of attr-names that are not identifiers
2022-10-16nixos/lib/testing: Delay nodes.machine.~config~ migrationRobert Hensing1-1/+1
Provide a window during which both solutions are valid without warnings, in order to fight warning fatigue, and not to push 3rd party repo maintainers to add unnecessary compat code.
2022-10-16nixos/tests: Generalize nix-build file.nix hack to testing-python.nixRobert Hensing1-2/+8
2022-10-09Merge staging-next into staginggithub-actions[bot]1-5/+9
2022-10-09nixos/doc: fix buildMaximilian Bosch1-2/+2
Now we even have options like `services.listmonk.database.settings."app.notify_emails"` shown correctly (i.e. with quotes).
2022-10-09genJqSecretsReplacementSnippet: Allow dots in attribute names...talyz1-5/+9
...and escape quotation marks and backslashes.
2022-10-07nixosOptionsDoc: buildInputs -> nativeBuildInputsArtturin1-1/+1
to make strictDepsByDefault work
2022-10-04Merge pull request #193498 from hercules-ci/nixos-doc-disambiguate-test-optionsRobert Hensing6-11/+15
nixos/doc: disambiguate test option ids
2022-10-04nixos/lib/qemu-common.nix: set qemuSerialDevice for isMips64Adam Joseph1-1/+1
2022-10-01Merge pull request #193132 from figsoda/clean-upfigsoda2-16/+0
treewide: clean up
2022-09-29nixos/doc: Disambiguate test option idsRobert Hensing4-10/+10
Changing this later on would break external links into the manual.
2022-09-29make-options-doc: Make optionIdPrefix configurable ("opt-")Robert Hensing2-1/+5
2022-09-29nixos/testing: Fix release.nix tests evaluationRobert Hensing3-8/+4
Fixes the problem introduced by 12b3066aae46a8ccc3d21f54f668a3f4be344332 which caused nixos/release.nix to return the wrong attributes, while intending to only affect nixos/lib's runTest. This also removes callTest from the test options, because callTest is only ever invoked by all-tests.nix.
2022-09-29Merge pull request #187817 from intelfx/nixos-containertarballs-fix-pixzFranz Pletz1-1/+1
make-system-tarball: use `pixz -t`
2022-09-28lib.nixos.runTest: Return the test itselfRobert Hensing1-1/+1
(NB: the lib in the flake) Correcting a mistake I made when removing the test matrix code from https://github.com/NixOS/nixpkgs/pull/191540
2022-09-28Merge pull request #191540 from hercules-ci/nixosTest-modularRobert Hensing17-342/+789
nixosTest: make modular
2022-09-26nixos/lib/make-single-disk-zfs-image.nix: remove unused bindingfigsoda1-9/+0
2022-09-26nixos/lib/make-multi-disk-zfs-image.nix: remove unused bindingfigsoda1-7/+0
2022-09-24nixos/testing/network.nix: Add network config to specialisationsRobert Hensing2-1/+2
2022-09-24nixos/testing: Improve interactive docsRobert Hensing1-1/+21
2022-09-24nixos/testing: Add nodes.config backcompat to nodes module argumentRobert Hensing1-1/+1
2022-09-24nixos/testing: Improve option docsRobert Hensing8-26/+109
2022-09-24nixos/testing-python: Add interactive variant support to makeTestRobert Hensing1-0/+1
2022-09-24nixos/testing: Support mypy through regular mechanismsRobert Hensing1-3/+1
Rebase / forward port of 2c8bbf33fd84d2fd9de70d66c1f50ac1b6123dd8
2022-09-24nixos/testing/meta.nix: Add options, some optionalRobert Hensing1-3/+19
2022-09-24nixos/testing/network.nix: Fix specialisations onlyShorthandRobert Hensing1-5/+9
2022-09-24nixos/testing: Embrace callTestRobert Hensing2-10/+11
My conception of its input was wrong. It is quite a useful construct, even if its name is a bit weird.
2022-09-24nixos/lib/eval-config: Document the use of baseModulesRobert Hensing1-0/+2
2022-09-24nixos/lib/build-vms.nix: RemoveRobert Hensing1-113/+0
It has been replaced by the modular test framework in nixos/lib/testing. If you are looking for a way to produce a VM-test-like configuration outside of the test framework, use the nixos/lib/testing/nixos-test-base.nix NixOS module, possibly in combination with { _module.args.nodes = .....; }.
2022-09-24nixos/testing: Extract nixos-test-base.nix NixOS moduleRobert Hensing2-12/+24
2022-09-24testing-python.nix: Replace makeTest implementationRobert Hensing1-232/+10
2022-09-24nixos/testing: Move entrypoint to nixos/lib + docRobert Hensing3-20/+45
2022-09-21nixos/testing/network.nix: Fix for specialisations and specialArgs.nameRobert Hensing1-56/+93
Before this, it relied on being able to `imports` from the `name` module argument, which wasn't really necessary and required a potentially quite breaking change. We can revert that now.
2022-09-21nixos/testing: Add pkgs parameterRobert Hensing2-0/+12
This parameter is for packages to use in VMs, unlike hostPkgs.
2022-09-21nixos/testing/network.nix: Avoid deprecated .configRobert Hensing1-1/+1
2022-09-21nixos/testing-python.nix: Add evalTestRobert Hensing11-0/+570
This is a decomposition of the testing-python.nix and build-vms.nix files into modules. By refactoring the glue, we accomplish the following: - NixOS tests can now use `imports` and other module system features. - Network-wide test setup can now be reusable; example: - A setup with all VMs configured to use a DNS server - Split long, slow tests into multiple tests that import a common module that has most of the setup. - Type checking for the test arguments - (TBD) "generated" options reference docs - Aspects that had to be wired through all the glue are now in their own files. - Chief example: interactive.nix. - Also: network.nix In rewriting this, I've generally stuck as close as possible to the existing code; copying pieces of logic and rewiring them, without changing the logic itself. I've made two exceptions to this rule - Introduction of `extraDriverArgs` instead of hardcoded interactivity logic. - Incorporation of https://github.com/NixOS/nixpkgs/pull/144110 in testScript.nix. I might revert the latter and split it into a new commit.
2022-09-17nixos/make-options-doc: Explain docbook to markdown migrationRobert Hensing1-0/+18
2022-09-10lib/options: deprecate docbook text and literalDocBookpennae2-16/+52
deprecate literalDocBook by adding a warning (that will not fire yet) to its uses and other docbook literal strings by adding optional warning message to mergeJSON.
2022-09-06Merge pull request #189999 from sbruder/test-driver-formatting-closed-portJacek Galowicz1-1/+1
nixos/test-driver: fix formatting of closed port
2022-09-06nixos/test-driver: fix formatting of closed portSimon Bruder1-1/+1
Co-authored-by: a-kenji <aks.kenji@protonmail.com>
2022-09-02nixos/test-driver: add wait_for_unit() timeout argAlyssa Ross1-2/+4
For example, the wait_for_unit() call in the Moodle test times out for myself and others[1], so it would be good to be able to increase it to something less likely to be hit by a test that would otherwise pass. [1]: https://github.com/NixOS/nixpkgs/pull/177052#issue-1266336706
2022-09-01Merge branch 'master' into option-docs-mdpennae1-15/+47
2022-08-31nixos/*: convert internal option descriptions to MDpennae1-2/+2
we'll have to do it eventually, may as well be now.
2022-08-31nixos/*: automatically convert option descriptionspennae2-94/+94
conversions were done using https://github.com/pennae/nix-doc-munge using (probably) rev f34e145 running nix-doc-munge nixos/**/*.nix nix-doc-munge --import nixos/**/*.nix the tool ensures that only changes that could affect the generated manual *but don't* are committed, other changes require manual review and are discarded.