Commit Graph

1291 Commits

Author SHA1 Message Date
Vladimír Čunát
cc41aefe44
chromium tests: inherit timeout from the package
/cc #49442.  It should decrease the waste of resources due to abortions.
2018-11-01 20:15:27 +01:00
Johan Thomsen
2617b6800d nixos/kubernetes: Replace KubeDNS with CoreDNS 2018-10-31 13:41:04 +01:00
xeji
6efd811062
Merge pull request #49348 from markuskowa/mod-slurm-upgrade
nixos/slurm: add slurmdbd, run daemons as user
2018-10-31 00:16:11 +01:00
Robin Gloster
4c8a198f12 tests/docs: remove remnants of old allowPing default (#49198)
This has been defaulting to true since 16.03, we don't need this code
anymore, also the note in the documentation has been obsolete for quite
a while.
2018-10-30 22:26:43 +01:00
Markus Kowalewski
b388beeca3
nixos/slurm: add maintainer to module and test 2018-10-30 19:50:52 +01:00
Markus Kowalewski
d2799d1835
nixos/slurm: node/partitionName option -> list
Make the node and partitionname options lists.
There can be more than paratition or set of nodes.

Add changes to release notes
2018-10-30 19:50:52 +01:00
Markus Kowalewski
79c9dbfb40
nixos/slurm: add slurmdbd to module
* New options "services.slurm.dbdserver.[enable,config]"
* Add slurmdbd to test slurm.nix
2018-10-30 19:50:52 +01:00
Alyssa Ross
91c746cacc
postgresql_11: init at 11.0 2018-10-30 14:33:35 +00:00
Alyssa Ross
c6c7d55790
postgresql*: use underscores in version numbers 2018-10-30 14:32:21 +00:00
Alyssa Ross
9594b59f13
postgresql10: rename from postgresql100 2018-10-30 12:40:20 +00:00
Léo Gaspard
02e1f00ffd
dovecot, opensmtpd: add link to test in meta.tests
Rationale
---------

Currently, tests are hard to discover. For instance, someone updating
`dovecot` might not notice that the interaction of `dovecot` with
`opensmtpd` is handled in the `opensmtpd.nix` test.

And even for someone updating `opensmtpd`, it requires manual work to go
check in `nixos/tests` whether there is actually a test, especially
given not so many packages in `nixpkgs` have tests and this is thus most
of the time useless.

Finally, for the reviewer, it is much easier to check that the “Tested
via one or more NixOS test(s)” has been checked if the file modified
already includes the list of relevant tests.

Implementation
--------------

Currently, this commit only adds the metadata in the package. Each
element of the `meta.tests` attribute is a derivation that, when it
builds successfully, means the test has passed (ie. following the same
convention as NixOS tests).

Future Work
-----------

In the future, the tools could be made aware of this `meta.tests`
attribute, and for instance a `--with-tests` could be added to
`nix-build` so that it also builds all the tests. Or a `--without-tests`
to build without all the tests. @Profpatsch described in his NixCon talk
such systems.

Another thing that would help in the future would be the possibility to
reasonably easily have cross-derivation nix tests without the whole
NixOS VM stack. @7c6f434c already proposed such a system.

This RFC currently handles none of these concerns. Only the addition of
`meta.tests` as metadata to be used by maintainers to remember to run
relevant tests.
2018-10-30 21:31:39 +09:00
Tuomas Tynkkynen
2380f6a4fa nixos/tests/rsyslogd: Fix eval 2018-10-30 14:27:44 +02:00
Robert Schütz
6017fdfe91 nixos/tests/home-assistant: no longer ignore "Timer got out of sync" error
That error message was removed in https://github.com/home-assistant/home-assistant/pull/17398.
2018-10-29 13:30:06 +01:00
Jörg Thalheim
4249dc2fe7
Merge pull request #49355 from Mic92/sddm
nixos/plasma5: disable ocr tests
2018-10-28 19:58:16 +00:00
Jörg Thalheim
f974b979a5
nixos/plasma5: disable ocr tests
This is brittle and breaks the test
2018-10-28 19:13:12 +00:00
obadz
07db5f1c8c
Merge pull request #48901 from Ekleog/opensmtpd-6.4.0
opensmtpd: 6.0.3p1 -> 6.4.0
2018-10-28 13:00:57 +00:00
aanderse
1381019e49 nixos/rsyslogd & nixos/syslog-ng: fix broken module (#47306)
* journald: forward message to syslog by default if a syslog implementation is installed

* added a test to ensure rsyslog is receiving messages when expected

* added rsyslogd tests to release.nix
2018-10-27 19:01:30 +02:00
Léo Gaspard
58f701ab74 opensmtpd: 6.0.3p1 -> 6.4.0p1 2018-10-27 12:15:09 +09:00
Pierre Bourdon
01d1f77681 tests/prometheus-exporters: add new Tor exporter
This new exporter was added in #48307.
2018-10-14 20:12:07 -05:00
Ben Wolsieffer
73c523a605 buildbot: add Python 3 support 2018-10-11 21:39:11 -04:00
Michael Raskin
a29603344a
Merge pull request #48189 from aanderse/redmine
redmine: refactor, cleanup, bug fix, and add functionality
2018-10-11 15:32:43 +00:00
Franz Pletz
0aabc77a03
Merge pull request #48055 from WilliButz/add-exporter-tests
nixos/tests: add test for prometheus exporters
2018-10-11 13:58:14 +00:00
Aaron Andersen
9ea9d86126 switched from builtins.fetchurl to pkgs.fetchurl 2018-10-11 08:32:00 -04:00
Aaron Andersen
1cb5b509f1 redmine: refactor, cleanup, bug fix, and add functionality
- added package option to specify which version of redmine
- added themes option back in to allow specifying redmine themes
- added plugins option back in to allow specifying redmine plugins
- added database.socket option to allow mysql unix socket authentication
- added port option to allow specifying the port rails runs on

- cleaned up Gemfile so it is much less hacky
- switched to ruby version 2.4 by default as suggested by documentation http://www.redmine.org/projects/redmine/wiki/redmineinstall#Installing-Redmine
- fixed an annoyance (bug) in the service causing recursive symlinks
- fixed ownership bug on log files generated by redmine
- updates reflecting renames in nixos options

- added a nixos test
2018-10-10 21:04:08 -04:00
WilliButz
cf47423650 nixos/tests: fix non-determinism for good 2018-10-10 14:57:43 +02:00
Samuel Dionne-Riel
7fb45271b2
Merge pull request #47917 from arianvp/fix-imperative-containers
Fix imperative containers
2018-10-08 16:55:38 -04:00
WilliButz
0febc64ed1
nixos/tests: add test for prometheus exporters 2018-10-08 17:21:49 +02:00
Arian van Putten
0668906e84 nixos/containers: Add regression test for #40355 2018-10-08 10:55:42 +02:00
Matthew Bauer
33d24042d4
Merge pull request #46443 from bobvanderlinden/pr-test-upnp
Miniupnpd and bittorrent improvements
2018-10-05 22:48:24 -05:00
Jörg Thalheim
6a995e986a
Merge pull request #47159 from eqyiel/nextcloud
nextcloud module: init
2018-10-03 23:42:40 +01:00
aszlig
5e7bf8c5e9
nixos/tests/misc: Fix reboot-wtmp subtest
From commit b63f65aea0:

  I used tmpfiles.d instead of activation snippets to create the logs.
  It's good enough for upstream and other distros; it's probably good
  enough for us.

The "reboot-wtmp" subtest fails because it it assumes that there is a
reboot record even on the initial boot. This is only the case if wtmp is
created within the activation script, but the implementation now uses
tmpfiles.d, so the creation of the file is done at a much later stage.

Apart from that, if you think about the state after the installation as
"first boot", using the term "reboot" wouldn't probably make sense
either.

So in our subtest, we now reboot the machine and check the wtmp record
afterwards as we did before.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @edolstra, @jameysharp, @Mic92
2018-10-03 03:57:28 +02:00
Sarah Brofeldt
358a1c8a28 nixos/tests/nix-ssh-serve.nix: Use stable nix (#47584) 2018-10-01 23:01:38 +02:00
lewo
56b4db9710
Merge pull request #47411 from graham-at-target/multi-layered-images-crafted
Multi-Layered Docker Images
2018-10-01 09:48:24 +02:00
Franz Pletz
ebd38185c8 nixos/nextcloud: init
Co-authored-by: Franz Pletz <fpletz@fnordicwalking.de>
Co-authored-by: Robin Gloster <mail@glob.in>
Co-authored-by: Janne Heß <janne@hess.ooo>
Co-authored-by: Florian Klink <flokli@flokli.de>
2018-10-01 02:07:43 +09:30
Brian Olsen
783a58f363
nixos/rspamd: Remove non-working socket activation
The socket activation I added to the rspamd module doesn't actually work
and can't be made to work without changes to rspamd.

See: #47421
See: rspamd/rspamd#2035
2018-09-28 19:43:34 +02:00
Graham Christensen
fb2d153dac
dockerTools: test buildLayeredImage 2018-09-27 14:19:43 -04:00
Domen Kožar
6eacc17157
nixos tests: move common configuration into separate file
This allows tests outside nixos to use acme setup.
2018-09-24 20:07:33 +01:00
xeji
9163c057e7
Merge pull request #47155 from xeji/p/installer-tests
nixos/tests/installer: prevent race between parted and udev
2018-09-24 18:59:50 +02:00
xeji
c525111133
nixos/tests/hound: fix non-deterministic failure (#47152)
The test failed on Hydra in one instance because a request to the
server was sent before indexing was finished.
Retry the request until it succeeds (or times out).
2018-09-24 17:31:46 +02:00
Samuel Dionne-Riel
ebf041d4bd
Merge pull request #46193 from oxij/nixos/manual-to-doc
nixos: doc: implement #12542
2018-09-24 00:09:23 -04:00
Jan Malakhovski
0f3b89bbed nixos: doc: move non-service parts of service.nixosManual to documentation.nixos 2018-09-23 20:50:47 +00:00
xeji
589b290b43
nixos/tests/prosody: use sqlite database (#47185)
The test didn't catch an issue with luadbi because it used
internal storage only. Switch to sqlite to test sql access.
2018-09-23 10:46:22 +02:00
xeji
6e6e0a987b
nixos/tests/codimd: fix non-deterministic failure (#47179)
Test failed non-deterministically due to an obvious copy/paste error.
Fix it and increase wait time to 10s (2s may not be enough on Hydra).
2018-09-22 21:31:46 +02:00
Uli Baum
7dd6a5192d nixos/tests/installer: stop udev queue before calling mdadm
In the swraid test, temporarily stop udev queue execution while
creating mdraid devices to prevent a race with udev, see
https://groups.google.com/forum/#!topic/scylladb-dev/u87yHgo3ylU
2018-09-22 12:33:15 +02:00
Uli Baum
c46677fec2 nixos/tests/installer: use flock for all parted calls
to further reduce risk of race with udev, like util-linux
recommends for sfdisk:
https://github.com/karelzak/util-linux/blob/v2.32/disk-utils/sfdisk.8#L71
2018-09-22 12:22:17 +02:00
Uli Baum
a5183762c5 nixos/tests/installer: prevent race between parted and udev
by combining all parted commands into a single parted call.
This eliminates one cause of non-deterministic failure.
2018-09-22 01:32:06 +02:00
Jörg Thalheim
06df7c9a33
Merge pull request #47077 from xeji/p/ferm-test
nixos/tests/ferm: disable dhcpcd
2018-09-21 09:58:00 +01:00
Sarah Brofeldt
a4e9ab65f6
Merge pull request #47102 from xeji/p/test-atd
nixos/tests/atd: wait for atd to start
2018-09-21 10:09:28 +02:00
Uli Baum
8ffd65b12e nixos/tests/atd: wait for atd to start
The test failed non-deterministically when an at command was
issued before the atd daemon was running.
2018-09-21 09:22:03 +02:00
Graham Christensen
10450ffd5b
Merge pull request #47017 from grahamc/docker-tools-test
dockerTools.buildImage: test that created=now makes an unstable date
2018-09-20 20:02:51 -04:00
Uli Baum
5e7b7b805a nixos/tests/ferm: disable dhcpcd
The test failed in one run on Hydra, logs look like
dhcpcd changed ipv6 routing at just the wrong time.
Disable dhcpcd. It's not needed, the test uses static IPs anyway.
2018-09-21 01:17:41 +02:00
xeji
e40d850fd1
nixos/tests/gdk-pixbuf: fix test on i686 (#46916)
Test didn't run because it tried to create a VM with 4096M RAM
but qemu-system-i386 has a hard 2047M memory limit.
- reduce memory to 2047M on i686.
- increase timeout 300s -> 1800s because the tests are much slower
  on i686 and timed out.
2018-09-20 21:29:37 +02:00
Graham Christensen
aedc651903
dockerTools.buildImage: test that created=now makes an unstable date 2018-09-20 13:06:14 -04:00
xeji
05659962cd
nixos/tests/networking.virtual: prevent non-deterministic failure (#46949)
The test failed non-deterministically on Hydra because interfaces
sometimes weren't yet fully cleaned up when the result was checked.
2018-09-20 13:20:12 +02:00
Maximilian Bosch
8b58a7187c nixos/yabar: fix module & test (#46954)
The `pkgs.yabar` package is relatively old (2016-04) and contains
several issues fixed on master. `yabar-unstable` containsa recent master
build with several fixes and a lot of new features (I use
`yabar-unstable` for some time now and had no issues with it).

In the upstream bugtracker some bugs could be fixed on ArchLinux by
simply installing `yabar-git` (an AUR package which builds a recent
master).

To stabilize the module, the option `programs.yabar.package` now
defaults to `pkgs.yabar-unstable` and yields a warning with several
linked issues that are known on `pkgs.yabar`.

The test has been refactored as well to ensure that `yabar` actually
starts (and avoid non-deterministic random success) and takes a
screenshot of a very minimalistic configuration on IceWM.

Fixes #46899
2018-09-20 12:47:46 +02:00
xeji
beb8ca2887
nixos/tests/hibernate: prevent non-deterministic failure (#46882)
... that occurred mostly on i686. Improve timing.
With this, the failures are no longer reproducible on my machine.
2018-09-19 16:19:45 +02:00
xeji
daf40ab165
nixos/tests/containers-imperative: fix on i686 (#46874)
Test failed on i686 in a sandbox because some packages required
to build the nixos manual for the container were missing. Add them.
2018-09-19 16:19:31 +02:00
xeji
8a2bf1319d
Merge pull request #46769 from samueldr/zhf/grub
Fixes grub1 installer tests
2018-09-17 19:12:23 +02:00
Samuel Dionne-Riel
b63c539bdc nixos/tests/installer: grub1 needs /tmp to exist. 2018-09-17 09:31:43 -04:00
WilliButz
dd5dcc65ac nixos/tests: add test for codimd 2018-09-17 15:18:52 +02:00
Bob van der Linden
5fbc521bf9
tests: bittorrent: add bobvanderlinden as maintainer 2018-09-15 23:10:26 +02:00
Bob van der Linden
276ffc5656
tests: bittorrent: improve stability
This attempts to improve stability of the test by using existing
services for miniupnpd and transmission.

It also uses explicit addresses for the network interfaces so that the
external IP addresses are valid internet addresses (thus fixing
validation problems from upnpc).

Also disable eth0 from being used to transfer torrents over without that
being the intention.
2018-09-15 23:10:25 +02:00
Bob van der Linden
32c63c6905
tests: upnp: init test for upnp using miniupnpd / miniupnpc 2018-09-15 23:10:25 +02:00
xeji
f70dc57ad3
nixos/tests/opensmtpd: prevent non-deterministic failure (#46071)
A sporadic failure occured on Hydra because a request was sent
to smtpd after the systemd unit was started, but before the daemon
was actually listening. Fix by checking for open ports first.
2018-09-05 22:36:17 +02:00
Uli Baum
62086c6be6 nixos/tests/novacomd: prevent non-deterministic failure
A sporadic failure occured on Hydra because a request was sent
to the daemon after the systemd unit was started, but before the
daemon was actually listening. Fix by checking for open port first.
2018-09-04 22:46:44 +02:00
Tim Steinbach
5fccac2b8d
kernel: Remove Copperhead
The patches are unmaintained and suggest a false sense of security
2018-09-03 11:18:11 -04:00
Samuel Dionne-Riel
a92cfb5725
Merge pull request #45912 from xeji/p/dhcpcd
dhcpcd: 6.11.5 -> 7.0.8
2018-09-02 15:28:15 -04:00
Uli Baum
13c3986b7a nixos/tests/networking.*.macvlan: disable reverse path check
Generated reverse path filtering rules for the macvlan interface
seem to be incorrect, causing the test to fail - sometimes or always,
depending on the dhcpcd version used.
- Disable reverse path checking temporarily to avoid blocking the channel
- Print more diagnostic information for debugging
2018-09-02 12:26:28 +02:00
Uli Baum
7e9bd2dae1 nixos/tests/flatpak: explicitly disable gdm to fix eval
The switch to lightdm as default display manager in #30890
broke eval of the flatpak test. Since the test uses the
auto display manager (lightdm), gdm must now be explicitly disabled.
2018-09-02 01:57:20 +02:00
xeji
ff679f86a2
Merge pull request #30890 from Lassulus/slim-lightdm
display-managers: make lightdm the default
2018-09-01 16:11:38 +02:00
Uli Baum
43e30b1ead nixos/tests/installer: add missing system.extraDependencies
Since 1b11fdd0df the test VM
depends on some extra packages to build the system to be installed.
This broke the installer test as it tried to download/build these
packages in a sandbox.
2018-09-01 11:50:02 +02:00
Vladimír Čunát
9b0649ae3e
Merge #45774: linux_testing_bcachefs: upgrade, add tests 2018-09-01 11:06:29 +02:00
Vladimír Čunát
0473466ba5
Merge #45731: artwork update (replacing old logo) 2018-09-01 10:43:20 +02:00
Okina Matara
3d1fecd5bd nixos/tests/bcachefs: init 2018-08-31 21:19:53 -05:00
lassulus
fc035da4a4 xserver.displayManager: change default
Switch from slim to lightdm as the display-manager.
    If plasma5 is used as desktop-manager use sdddm.
    If gnome3 is used as desktop-manager use gdm.

    Based on #12516
2018-08-31 17:57:39 +02:00
xeji
4db15ba7b8
Merge pull request #45748 from xeji/p/nfs-232
nfs-utils: 2.1.1 -> 2.3.2, integrate libnfsidmap
2018-08-31 14:23:56 +02:00
Uli Baum
e0ca51c367 nixos/tests/nfs: fix nfs4 client mount path
nfs4 exports from a virtual filesystem root,
so the client mount path differs from nfs3
2018-08-30 19:57:39 +02:00
xeji
70b3ac8378
nixos/tests/i3wm: prevent non-deterministic failure (#45759)
Test failed sporadically on Hydra, probably due to timing issues.
These changes should make that less likely to occur.
2018-08-29 19:38:35 +02:00
xeji
ff6a61ad1b
nixos/tests/mesos: fix test (#45758)
fallout from 39e678e24e :
dockerTools.buildImage no longer applies default tag "latest"
2018-08-29 19:38:00 +02:00
Samuel Dionne-Riel
bc5b26b4ab Reviews use of old nixos wallpaper to use one with the new logo.
The wallpaper used is *structurally compatible* with the other one,
meaning that the logo is at the same location, and not bigger.

It has one drawback: the logo is brighter, which clashes with the grub
usage. This is to be fixed with new options in grub.
2018-08-29 00:04:58 -04:00
Dennis Gosnell
7d23ffb736 virtualbox: Change the virtualbox tests to not build the unfree tests by default. (#45415) 2018-08-28 22:28:47 +02:00
Matt McHenry
94a906b59a systemd: ensure fsck Requires/After links are created in mount units
systemd-fsck-generator only produces these lines if it can find the
necessary fsck executable in its PATH.

fixes #29139.
2018-08-28 17:12:49 +02:00
Jörg Thalheim
b7d7e20b3d
Merge pull request #45647 from xeji/p/netdata-test
nixos/tests/netdata: fix non-deterministic failure
2018-08-26 13:50:10 +01:00
Jörg Thalheim
b1aa9cbdbf
Merge pull request #45649 from xeji/p/networking-tests
nixos/tests/networking: fix routes and virtual tests
2018-08-26 13:45:55 +01:00
Uli Baum
3f8756ce10 nixos/tests/networking: fix "virtual" tests
`ip route` now displays extended tun attributes, so the expected
output of this test changed.

Upstream change: https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?id=118eda77d6602616bc523a17ee45171e879d1818
2018-08-26 14:24:07 +02:00
Uli Baum
f021702d21 nixos/tests/networking: fix routes tests
The output format of `ip route` changed, it now explicitly
shows "proto static" for static routes.
2018-08-26 14:15:15 +02:00
Uli Baum
a44469d7b6 nixos/tests/netdata: fix non-deterministic failure
The test sporadically failed on hydra when a request was made
before the service was actually listening on its port.
Explicitly wait for the port to open.
2018-08-26 13:38:58 +02:00
xeji
3050406388
nixos/tests/matrix-synapse: fix test (#45596)
Since matrix-synapse 0.33.0 underscores in server names are rejected
by server name validation, causing the test to fail:
  valueError: Server name 'server_sqlite' contains invalid characters
Relevant upstream change:
546bc9e28b
2018-08-26 10:38:52 +02:00
Bas van Dijk
a144c798e5
Merge pull request #44340 from shmish111/es-curator
nixos/curator: init elasticsearch curator
2018-08-26 01:33:34 +02:00
xeji
b2dc75cd03
Merge pull request #43736 from volth/patch-208
qemu: 2.12.1 -> 3.0.0
2018-08-26 01:28:12 +02:00
Bas van Dijk
241377ee76 nixos/tests/elk.nix: make sure the test doesn't wait for too long on elasticsearch-curator 2018-08-25 18:53:10 +02:00
David Smith
842000566b elasticsearch-curator: add test 2018-08-25 18:53:10 +02:00
Uli Baum
268bb4ea3c nixos/tests/munin: fix non-deterministic failure
- wait for node to listen before starting munin-cron
- increase timeout for munin-cron startup
- disable a failing plugin to remove irrelevant error message
2018-08-25 14:27:41 +02:00
Uli Baum
672a0ebd80 nixos/tests/wordpress: fix test
- explicitly add dbHost to fix test
- remove unnecessary options that are set by default anyway
2018-08-24 15:48:39 +02:00
Robert Schütz
33be3c4630 home-assistant: 0.75.2 -> 0.76.1
Also simplify the way overrides are defined for better readability
and use the opportunity to introduce a packageOverrides option.
2018-08-21 19:26:54 +02:00
volth
341250fa10 qemu: 2.12.1 -> 3.0.0 2018-08-20 22:02:02 +00:00
(cdep)illabout
e04e92d38b
Merge remote-tracking branch 'origin/master' into vbox-extpack 2018-08-16 00:40:09 +09:00
(cdep)illabout
2ae9907cc4
virtualbox: Add tests for the VirtualBox Extension Pack. 2018-08-15 10:09:15 +09:00
lewo
f2cab31ae9
Merge pull request #44841 from Ma27/bump-hydra
hydra: 2017-11-21 -> 2018-08-07
2018-08-14 09:55:11 +02:00
Maximilian Bosch
7682c2fd61
hydra: 2017-11-21 -> 2018-08-07
This bumps Hydra to the latest revision available. As Hydra doesn't have
a release model (and therefore no tags) ATM, the derivation will pin
against the actual git revision and the date of the commit in the
derivation name.

Additionally the following changes have been made:

* Dropped `postUnpack` phase. It is useful when working with the Hydra
  source (and no dirty changes shall be used in `release.nix`, but is has
  no use in `nixpkgs`).

* Added myself as maintainer to have more folks available in case of
  future breakage.

* Implemented support for Nix 2.0 and `unstable` (currently 2.1):

  Since 1672bcd230447f1ce0c3291950bdd9a662cee974 in NixOS/nix the
  evaluator differentiates between `settings` and `evalSettings`.
  Previously `restrictEval` in `hydra-eval-jobs.cc` has been set in
  `settings`, this doesn't work anymore in Nix 2.1 and is therefore
  incompatible to Nix 2.0 on an API level.

  To resolve this, the flag `isGreaterNix20` parses the version string
  of `pkgs.nix` and applies a patch if nix.version<=2.0.

  Furthermore the Hydra build with Nix 2.1 requires `boost` as build input
  which is not needed for Nix 2.0. To avoid unnecessary increase in the
  closure size this library will only used as build input for
  nix.version>2.0.

* Fixed the NixOS test for `hydra`:
  disabled binary cache to allow sandbox builds (otherwise it would
  query `cache.nixos.org` during the Hydra build inside the test).

  Additionally the trivial.nix jobset required simplification (as done
  in NixOS/hydra, e.g. tests/api-test.nix) as bash is not available in
  the build sandbox as builder (even when adding pkgs.bash to
  systemPackages).

  The easiest workaround to confirm a the functionality of a jobset
  without importing nixpkgs is to use the default shell /bin/sh which
  is mounted from `pkgs.busybox` into the build env
  (https://github.com/NixOS/nixpkgs/pull/44841#discussion_r209751972) in the
  VM and a named pipe to create $out.

Closes #44044
2018-08-13 22:56:27 +02:00
aszlig
f51dc2a94b
nixos/tests/luksroot: Fix OCR of passphrase prompt
Since a9d69a74d6, the passphrase prompt
now no longer starts with "Enter passphrase for" but now it's just
"Passphrase for", which causes the luksroot installer test to fail.

I've tested this on a x86_64-linux machine and the test now succeeds.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @oxij, @samueldr
Issue: #29441
2018-08-11 00:07:10 +02:00
xeji
12eb1e96ce
Merge pull request #44870 from symphorien/tests-eval
Fix evaluation of two tests
2018-08-10 19:06:20 +02:00
Symphorien Gibol
9375312ab9 nixos/tests/yabar: fix evaluation 2018-08-10 15:22:34 +02:00
Silvan Mosberger
1a3b9e1bd2
Merge pull request #44556 from johanot/certmgr-module-init
nixos/certmgr: init
2018-08-10 15:11:26 +02:00
Johan Thomsen
004e7fb6fd nixos/certmgr: init 2018-08-10 09:56:25 +02:00
Thomas Bach
31e11bdd60 cassandra: rewrote service from scratch
Adds a replacement for the previously broken
`services.database.cassandra` with tests for a multi-node setup.
2018-08-07 14:48:43 +00:00
Robert Schütz
2215834789
simp_le: use python3Packages (#44476) 2018-08-05 01:17:38 +02:00
Jesper
0254ae4e80 netdata: 1.9.0 -> 1.10.0 (#44472)
The web_access.patch would no longer apply.
It disabled a check that required the static files
for the web UI to be owned by the user the daemon runs as
(not root, so it doesn't work well with nix).

Besides updating netdata, this commit removes that patch,
changes the netdata service config to set the "web files owner/group"
option to "root" and adds a test that checks that the web UI is being served.

This allows the web files to be owned by root without patching.
2018-08-05 00:05:48 +02:00
Silvan Mosberger
d31f89df44
Merge pull request #44127 from johanot/nixos-cfssl
nixos/cfssl: Add new module for cfssl
2018-08-03 16:39:12 +02:00
Jan Tojnar
f735d6a38d
Merge pull request #43992 from jtojnar/upstream-sessions
Upstream sessions
2018-08-03 14:23:17 +02:00
Johan Thomsen
7d7c36f8be nixos/cfssl: init
- based on module originally written by @srhb
- complies with available options in cfssl v1.3.2
- uid and gid 299 reserved in ids.nix
- added simple nixos test case
2018-08-03 09:40:32 +02:00
Bas van Dijk
0aae3fda06 graphite: 1.0.2 -> 1.1.3 & moved dependencies to python-modules (#44276)
Fixes #30891

* Upgrade `graphite-web`, `carbon` and `whisper` from 1.0.2 -> 1.1.3.

* Replaced the deprecated `pythonPackages.graphite_influxdb` with
  `pythonPackages.influxgraph.`

* Renamed `pythonPackages.graphite_web` to `pythonPackages.graphite-web`
  to be consistent with the Python package name.

* Replaced the unmaintained `pythonPackages.graphite_pager` with
  `pythonPackages.graphitepager`

* Moved all new packages from `python-packages.nix` to
  `pkgs/development/python-modules`
2018-08-02 16:39:57 +02:00
aszlig
6f5a86b189
tests/containers-imperative: Disable useSandbox
Since 4f6df27aee, nix.useSandbox defaults
to true which causes the Nix build within the containers-imperative test
to fail while trying to hardlink files into the chroot:

link("/nix/store/foo", "/nix/store/bar.drv.chroot/nix/store/foo")
   = -1 EPERM (Operation not permitted)

The reason this happens is that the hosts store is mounted using 9p and
an overlayfs is mounted on top, so even if we would disable the tmpfs
for the upper directory the hardlink would still cross filesystem
boundaries, which then fails with the above error code.

I haven't yet seen any other test which fails in a similar way, which
might be because building within VM tests is not very common and the
installer tests build in a separate store, so they're not affected.

Signed-off-by: aszlig <aszlig@nix.build>
Issue: https://github.com/NixOS/nix/issues/2324
Cc: @aristidb, @edolstra, @chaoflow, @kampfschlaefer
2018-08-02 06:00:32 +02:00
Tor Hedin Brønner
e8e0edd95c
nixos/tests/gnome3: Explicitly set default desktopManager
Sessions from `extraSessionFilePackages` isn't picked automatically as the
default session.
2018-08-01 19:14:33 +02:00
Bas van Dijk
72f3a5cf5c
Merge pull request #44038 from LumiGuide/elk-6.3.0
elk: 6.2.4 -> 6.3.2
2018-07-28 00:33:18 +02:00
Bas van Dijk
ebcdb822f8 elk: 6.2.4 -> 6.3.2
* The ELK stack is upgraded to 6.3.2.

* `elasticsearch6`, `logstash6` and `kibana6` now come with X-Pack which is
  a suite of additional features. These are however licensed under the unfree
  "Elastic License".

* Fortunately they also provide OSS versions which are now packaged
  under: `elasticsearch6-oss`, `logstash6-oss` and `kibana6-oss`.
  Note that the naming of the attributes is consistent with upstream.

* The test `nix-build nixos/tests/elk.nix -A ELK-6` will test the OSS
  version by default. You can also run the test on the unfree ELK using:
  `NIXPKGS_ALLOW_UNFREE=1 nix-build nixos/tests/elk.nix -A ELK-6 --arg enableUnfree true`
2018-07-28 00:01:31 +02:00
Tuomas Tynkkynen
96190535e5 Revert "nixos: rename system.{stateVersion,defaultChannel} -> system.nixos.\1"
This reverts commit 095fe5b43d.

Pointless renames considered harmful. All they do is force people to
spend extra work updating their configs for no benefit, and hindering
the ability to switch between unstable and stable versions of NixOS.

Like, what was the value of having the "nixos." there? I mean, by
definition anything in a NixOS module has something to do with NixOS...
2018-07-28 00:12:55 +03:00
volth
92b3e8f147 fix build with allowAliases=false 2018-07-23 00:12:23 +00:00
volth
2e979e8ceb [bot] nixos/*: remove unused arguments in lambdas 2018-07-20 20:56:59 +00:00
Frederik Rietdijk
1a6af9f88e
Merge pull request #43857 from volth/unused
[bot] treewide: remove unreferenced code
2018-07-20 21:06:32 +02:00
volth
87f5930c3f [bot]: remove unreferenced code 2018-07-20 18:48:37 +00:00
Matthew Bauer
76999cc40e treewide: remove aliases in nixpkgs
This makes the command ‘nix-env -qa -f. --arg config '{skipAliases =
true;}'’ work in Nixpkgs.

Misc...

- qtikz: use libsForQt5.callPackage

  This ensures we get the right poppler.

- rewrites:

  docbook5_xsl -> docbook_xsl_ns
  docbook_xml_xslt -> docbook_xsl

diffpdf: fixup
2018-07-18 23:25:20 -04:00
Jan Tojnar
5b1f6b5959
nixos/flatpak: slim down test enviroment a bit 2018-07-15 22:07:08 +02:00
aszlig
7b87554ca1
nixos/tests/letsencrypt: Hardcode certs and keys
In 0c7c1660f7 I have set allowSubstitutes
to false, which avoided the substitution of the certificates.

Unfortunately substitution may still happen later when the certificate
is merged with the CA bundle. So the merged CA bundle might be
substituted from a binary cache but the certificate itself is built
locally, which could result in a different certificate in the bundle.

So instead of adding just yet another workaround, I've now hardcoded all
the certificates and keys in a separate file. This also moves
letsencrypt.nix into its own directory so we don't mess up
nixos/tests/common too much.

This was long overdue and should finally make the dependency graph for
the ACME test more deterministic.

Signed-off-by: aszlig <aszlig@nix.build>
2018-07-12 02:32:46 +02:00
aszlig
c21b1ede95
nixos/tests/letsencrypt: Fix go source install
Since e95f17e272, Go packages no longer
contain the source tree, however Boulder seems to need that as it
generates a few files during build.

Ideally we would only pick the files that are needed and put it into a
separate output, but I currently don't have time for this so I'm marking
this with XXX to get back to it later.

Signed-off-by: aszlig <aszlig@nix.build>
2018-07-12 02:32:44 +02:00
Oliver Evans
01bc14da8f nixos/tests/taskserver: fix typos (#43284) 2018-07-11 10:20:12 +02:00
Uli Baum
7ac794f878 nixos/tests/taskserver: fix eval
Since IP address options were changed for 18.03, eval has failed with:
"The option `networking.interfaces.eth1.subnetMask' is used but not defined."
although this option is not used at all in nixos anymore.

The misleading error message seems to be generated from evaluating warnings
for `mkRemovedOptionModule ["subnetMask"]` which apparently broke here
when this test inherited network.interfaces from one VM config to another.

Cc: @aszlig
2018-07-11 00:27:06 +02:00
Vladimír Čunát
38bca8d36f
nixos.tests.containers-imperative: increase VM memory
Apparently merging #43021 1bdb138710 did increase memory usage
in some cases.  1 GiB for a VM memory seems still low enough to me.
2018-07-06 15:57:57 +02:00
Silvan Mosberger
fb29756259
Merge pull request #42118 from emmanuelrosa/mpd-nixos-tests
mpd: add NixOS tests
2018-07-04 20:41:46 +02:00
Michael Raskin
b43c4d8b75
Merge pull request #42798 from flokli/users-users
tree-wide: users.extraUsers -> users.users, users.extraGroups -> users.groups
2018-07-02 11:23:10 +00:00
Matthew Bauer
060a98e9f4
Merge pull request #41381 from aespinosa/hadoop-modules
nixos/hadoop: add hadoop module (hdfs, yarn)
2018-06-30 18:33:03 -04:00
aszlig
0c7c1660f7
nixos/tests/letsencrypt: Don't substitute certs
If one of the certificates of the chain gets substituted from a binary
cache and the rest is generated locally it might turn out that we get
invalid certificates, which in turn cause tests using this module to
fail.

So let's set allowSubstitutes to false for all derivations that are
involved with certificate/key generation.

Signed-off-by: aszlig <aszlig@nix.build>
2018-06-30 18:35:10 +02:00
Allan Espinosa
0c10b2baa6 nixos/hadoop: add hadoop module (hdfs, yarn) 2018-06-29 23:14:02 -04:00
Florian Klink
89d5d191b4 nixos/tests: users.(extraUsers|extraGroup->users|group) 2018-06-30 02:31:30 +02:00
Matthew Bauer
ba0cd50e85
Merge pull request #42326 from Ekleog/opensmtpd-test
opensmtpd package and module: add nixos test
2018-06-28 22:25:12 -04:00
Jan Tojnar
9db625c7ab
ostree: 2018.4 → 2018.6
Update, clean-up dependencies and add installed tests.
2018-06-24 16:10:32 +02:00
Vladimír Čunát
a8c71037e0
installer tests: avoid udisks2
This is a temporary hack to fix channel until we resolve #42324.
2018-06-22 10:47:05 +02:00
Matthew Justin Bauer
fe948fd6b0
Merge pull request #42327 from bkchr/fix_plasma5_test
tests.plasma5: Fixes OCR in sddm by providing a custom theme
2018-06-21 18:24:35 -04:00
Bastian Köcher
51bafa6471 tests.plasma5: Fixes OCR in sddm by providing a custom theme
The custom theme just sets the old background colour that OCR works
again.
2018-06-21 14:52:54 +02:00
Léo Gaspard
b6eeeb111c
opensmtpd package and module: add nixos test 2018-06-21 13:04:24 +02:00
Joachim Fasting
b9c953eb19
nixos/tests/tor: a minimal test
For now check that the default client config boots.

Ideas for the future:
- Expand on control via netcat
- Configure a circuit of nodes exercise various configs (e.g., check
  that a client node can access a hidden www service).  Needs setting up
  authoritative directory servers &c.
2018-06-21 00:26:44 +02:00
Jörg Thalheim
d63cb0695f
Merge pull request #42133 from markuskowa/pgbackup
nixos/pgbackup: Fix and refactor the postgres backup module
2018-06-20 22:21:52 +01:00
Emmanuel Rosa
5509a4d273 mpd: add NixOS tests
This change adds NixOS tests for the MPD (Music Player Daemon) module.
Tests include:

- Playing audio locally using ALSA directly.
- Playing audio locally using PulseAudio (backed by ALSA).
- Playing audio from an external client.
- Rejecting an external client when it's not explicitly allowed (default configuration).

refs #41772
2018-06-19 20:01:25 -04:00
Markus Kowalewski
aee0f49fe6
nixos/pgbackup: add postgres backup to the postgres test 2018-06-17 19:50:40 +02:00
Uli Baum
41f3dee176 nixos/tests/morty: fix non-deterministic failure
... due to improper timing
2018-06-13 16:29:58 +02:00
xeji
08197d032a
nixos/tests/gnome3: switch to lightdm (#41742) 2018-06-09 22:02:48 +02:00
Andreas Rammhold
1305752ba0
nixos/memcached: added simple set/get test
The test ensures that the services comes up and accepts/provides values.
2018-06-09 02:11:15 +02:00
markuskowa
96af022af5 nixos/munge: run munge as user munge instead of root. (#41509)
* Added a note in release notes (incompatibilities)
* Adapt slurm test
* Change user to munge in service.munge
2018-06-09 00:50:28 +02:00
Andreas Rammhold
0decee48f5
Merge pull request #41466 from andir/haproxy-1.8.9
Haproxy 1.8.9
2018-06-08 23:41:05 +02:00
Andreas Rammhold
e179003026
nixos/tests; add haproxy 2018-06-08 22:31:47 +02:00
Antoine Eiche
47fc27b456 nixos/tests/hydra: build a trivial derivation
A script is used to create a project, and configure a jobset. This
jobset fetches a local file containing a trivial Nix expression. The
test script makes sure this derivation has been successfully built by
Hydra.
2018-06-06 18:00:41 +02:00
Joachim F
c30bd1c131
Merge pull request #41377 from markuskowa/slurm-ext-pr
nixos/slurm: Improve slurm configuration options and features.
2018-06-02 12:17:02 +00:00
Joachim F
ae512f2d8e
Merge pull request #34886 from leenaars/mortyproxy
morty: init -> 0.2.0
2018-06-02 10:26:09 +00:00
Markus Kowalewski
c8faa482fa
nixos/slurm: update test, add test for enableStools
* Add pure submit host to test 'enableStools'
* Disable client.enable on control machine
2018-06-02 00:19:03 +02:00
xeji
b17b44232f
nixos/tests/iftop: fix non-deterministic failure (#41309)
- make sure machines are fully booted before sending commands
- test that capability setting in iftop module makes a difference
2018-06-01 22:27:51 +02:00
aszlig
0385d69f87
tests/containers-imperative: Include stdenvNoCC
While building the container there are a few occasions where stdenvNoCC
is used underneath. During the last staging merge, some change now tries
to build texinfo during the test while building stdenvNoCC.

With this change, I'm adding stdenvNoCC to the closure to make sure that
even when we have future stdenv changes, it doesn't break (well, except
if we do have another variation like stdenvNoCC that overrides stdenv).

I haven't bisected the exact change, but I'd suspect that it could be
one of the commits in #39457.

This fixes the test and it no longer fails with the following error:

error: unable to download 'http://ftpmirror.gnu.org/texinfo/texinfo-6.5.tar.xz': Couldn't resolve host name (6)
builder for '/nix/store/r7sf1wjbnimwgnv276jh59nfnzw40x30-texinfo-6.5.tar.xz.drv' failed with exit code 1
cannot build derivation '/nix/store/5w1pv788ayi1wahyy76i90yqv96ai4h5-texinfo-6.5.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/cnsfkf0j5xmm14zzm5a3a66pz66gbc82-stdenv-linux.drv': 1 dependencies couldn't be built
cannot build derivation '/nix/store/11kkhk57ic8kfd7g197sqwgd0pzqfjhl-nixos-system-foo-0-18.09pre-git.drv': 1 dependencies couldn't be built
error: build of '/nix/store/11kkhk57ic8kfd7g197sqwgd0pzqfjhl-nixos-system-foo-0-18.09pre-git.drv' failed
/run/current-system/sw/bin/nixos-container: failed to build initial container configuration

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @aristidb, @edolstra, @chaoflow, @kampfschlaefer
2018-06-01 08:20:20 +02:00
Michiel Leenaars
e9ff80d24a morty: init as service 2018-05-30 18:13:53 +02:00
aszlig
94bc38e6c1
nixos/bind: Allow to set extra options
BIND doesn't allow the options section (or any section I'd guess) to be
defined more than once, so whenever you want to set an additional option
you're stuck using weird hacks like this:

services.bind.forwarders = lib.mkForce [ "}; empty-zones-enable no; #" ];

This basically exploits the fact that values coming from the module
options aren't escaped and thus works in a similar vain to how SQL
injection works.

Another option would be to just set configFile to a file that includes
all the options, including zones. That obviously makes the configuration
way less extensible and more awkward to use with the module system.

To make sure this change does work correctly I added a small test just
for that. The test could use some improvements, but better to have a
test rather than none at all. For a future improvement the test could be
merged with the NSD test, because both use the same zone file format.

This change has been reviewed in #40053 and after not getting any
opposition, I'm hereby adding this to master.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @peti, @edolstra
Closes: #40053
2018-05-30 05:07:39 +02:00
Tuomas Tynkkynen
2760b24462 Merge remote-tracking branch 'upstream/master' into staging 2018-05-26 19:01:18 +03:00
Jan Malakhovski
ad35019501 Merge branch 'master' into staging
Fixed conflicts:
- lib/systems/for-meta.nix: in favor of staging
- pkgs/os-specific/darwin/xcode/default.nix: in favor of master
2018-05-26 00:20:17 +00:00
Alberto Berti
0c841f98d0 Kubernetes tests: increase the size of the VM from 700MB to 1.5GB
VMs were starving, many of the daemons were unable to complete their
tasks resulting in tests failures.

Turned off verbose output from k8s components as it consumes even more resources, and useful error messages actually drown in debug-clutter
2018-05-25 11:10:15 +02:00
lewo
2e98e0c003
Merge pull request #40947 from samueldr/fix/34779
dockerTools: fixes extraCommands for mkRootLayer.
2018-05-24 21:22:31 +02:00
Samuel Dionne-Riel
902b0593be tests/docker-tools: Adds regression test for #34779 2018-05-24 12:23:51 -04:00
xeji
8d4716ac90
Merge pull request #41016 from markuskowa/slurm-pr
nixos/slurm: fix default module parameters, update documenation
2018-05-24 17:23:03 +02:00
Markus Kowalewski
fb7428c506
nixos/slurm: enable munge by default, added note to slurm description 2018-05-24 16:59:48 +02:00
Peter Hoeg
5b468ea6b1 nixos mysql: make start-up more robust (#41010)
1) Change start-type to ```notify``` when running MariaDB so that we don't have to busy-wait for the
socket to appear.

2) Do not manually create the directory under /run as we can get systemd to do
that for us. This opens up the possibility later for not having to launch as root.
2018-05-24 16:42:16 +02:00
John Ericson
db4d77779c Merge remote-tracking branch 'upstream/master' into staging 2018-05-21 20:21:48 -04:00
xeji
fe79fc0be4
nixos/tests/mysql-replication: fix test (#40850)
Failed non-deterministically on hydra because replcation
sometimes was not finished yet when checking the results.
2018-05-22 01:22:12 +02:00
Maximilian Bosch
4db2d4d1fd nixos/xsslock: wait until pgrep xlock succeeds (#40810)
Please refer to the conversation in the original PR (#40619) for further
reference: https://github.com/NixOS/nixpkgs/pull/40619#issuecomment-390437845

It takes some time after the standby to trigger the locker which might
break the test on Hydra.
2018-05-20 20:59:53 +02:00
Vladimír Čunát
392e6de7d0
Merge branch 'master' into staging 2018-05-20 13:20:53 +02:00
Uli Baum
8dbd8f4d69 nixos/dnscrypt-proxy: fix apparmor profile and test
Test failed because of an incomplete apparmor profile.
- fix apparmor profile
- improve test timing, prevent non-deterministic failure
2018-05-20 02:25:42 +02:00
Robert Schütz
90c0100139 Merge branch 'master' into staging 2018-05-19 11:12:19 +02:00
xeji
a0feedca8f
nixos/tests/nexus: fix for i686 (#40743)
test failed because qemu-system-i386 can only simulate 2047M RAM
(not 2048)
2018-05-19 11:09:07 +02:00
xeji
301072dc27 nixos/tests/hardened: fix test (#40745)
failed because `pgrep -u` segfaults when accesss to proc info
is denied on a hardened system.
2018-05-19 08:42:15 +02:00
John Ericson
5ccb99e372 Merge remote-tracking branch 'upstream/master' into staging 2018-05-18 17:48:37 -04:00
Robert Schütz
e3a7d55d3e
nixos/tests/home-assistant: ignore "Timer got out of sync" error (#40735) 2018-05-18 23:06:25 +02:00
Maximilian Bosch
641a623053 nixos/xss-lock: add module (#40619)
`xsslock` (which was originally packaged in 6cb1d1aaaf)
is a simple screensaver which connects a given screen locker (e.g.
`i3lock`) with `logind`. Whenever `loginctl lock-sessions` is invoked
the locker will be used to lock the screen. This works with its power
management features (e.g. `lid switch`) as well, so the PC can be locked
automatically when the lid is closed.

The module can be used like this:

```
{
  services.xserver.enable = true;

  programs.xss-lock.enable = true;
  programs.xss-lock.lockerCommand = "i3lock";
}
```
2018-05-18 18:24:53 +02:00
Tuomas Tynkkynen
003473613a Merge remote-tracking branch 'upstream/master' into staging
Conflicts:
	pkgs/top-level/all-packages.nix
2018-05-18 03:54:38 +03:00
Tim Steinbach
fe2deeb458
kafka: Add 1.1 2018-05-16 22:26:40 -04:00
John Ericson
ddbe9191ef Merge remote-tracking branch 'upstream/master' into staging
Keep the dontCheck because the test suite fails, get rid of the LDFLAGS
hack because we don't need it!
2018-05-16 15:16:08 -04:00
Maximilian Bosch
70d64d129e nixos/statsd: refactor test (#40554)
`statsd` is a daemon written in `node` to gather statistics over UDP.
The current test ensures that a port is open, but the basic
functionality isn't sufficiently tested.

This patch contains the following changes:

* Simplified port scanning (`waitForOpenPort` rather than `netcat` magic).

* Issue a TCP command to check the health of the `statsd` server.

* Simple script to check if `statsd` receives data over UDP and confirms
  the basic functionality of the TCP interface on `8126` for admin
  purposes.
2018-05-16 18:03:55 +02:00
Tuomas Tynkkynen
6b6a575748 Merge remote-tracking branch 'upstream/master' into staging
Conflicts:
	pkgs/tools/networking/telnet/default.nix
	pkgs/top-level/aliases.nix
2018-05-16 03:09:33 +03:00
aszlig
fa0b60f59a
nixos/tests/installer: Add lndir to extraDeps
In commit 17dd7bcd89 the systemd unit
generator now uses lndir instead of "ln -s", so we need to have lndir
available in the Nix store for the installer tests to be able to build
the units and thus the whole system.

This should fix the installer tests, although I have only tested it with
the "simple" subtest.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @jtojnar, @xeji, @edolstra
2018-05-15 18:51:53 +02:00
Jan Tojnar
d5060ac3a7
Merge pull request #33371 from jtojnar/flatpak
Flatpak
2018-05-15 14:19:33 +02:00
Jan Tojnar
21ff482f7d
nixos/xdg-desktop-portal: add test 2018-05-15 14:18:44 +02:00
Jan Tojnar
1c04363714
nixos/flatpak: add test 2018-05-15 14:18:44 +02:00
Maximilian Bosch
91365cd23a nexus: fix setup and nixos test (#40522)
The original `nexus` derivation required `/run/sonatype-work/nexus3`
which explicitly depended on the NixOS path structure.

This would break `nexus` for everyone using `nixpkgs` on a non-NixOS
system, additionally the module never created `/run/sonatype-work`, so
the systemd unit created in `services.nexus` fails as well. The issue
wasn't actively known as the `nixos/nexus` test wasn't registered in
Hydra (see #40257).

This patch contains the following changes:

* Adds `tests.nexus` to `release.nix` to run the test on Hydra.

* Makes JVM parameters configurable: by default all JVM options were located
  in `result/bin/nexus.vmoptions` which made it quite hard to patch
  these parameters. Now it's possible to override all parameters by
  running `VM_OPTS_FILE=custom-nexus.vmoptions ./result/bin/nexus run`
  (after patching the `nexus` shell script), additionally it's possible
  to override these parameters with `services.nexus.vmoptions`.

* Bumped Nexus from 3.5.1 to 3.11.0

* Run the `nexus` test on Hydra with `callTest` in `nixos/release.nix`,
  furthermore the test checks if the UI is available on the specified
  port.

* Added myself as maintainer for the NixOS test and the package to have
  some more people in case of further breakage.

* Added sufficient disk space to the `nexus` test, otherwise the service
  fails with the following errors:

  ```
  com.orientechnologies.orient.core.exception.ODatabaseException: Cannot create database 'accesslog'
  com.orientechnologies.orient.core.exception.OLowDiskSpaceException: Error occurred while executing
    a write operation to database 'accesslog' due to limited free space on the disk (242 MB). The database
    is now working in read-only mode. Please close the database (or stop OrientDB), make room on your hard
    drive and then reopen the database. The minimal required space is 256 MB. Required space is now set to
    256MB (you can change it by setting parameter storage.diskCache.diskFreeSpaceLimit) .
  ```

/cc @ironpinguin @xeji
2018-05-15 14:10:29 +02:00
John Ericson
f2017c40ae Merge remote-tracking branch 'upstream/master' into staging 2018-05-14 22:53:10 -04:00
Uli Baum
dd73ab0092 nixos/tests: prevent stateVersion warnings in eval
... introduced by 1f0b6922d3
continuation of 88fa50c2f2
2018-05-15 00:22:35 +02:00
John Ericson
8e891e6ed4 Merge remote-tracking branch 'upstream/master' into staging 2018-05-14 10:57:33 -04:00
xeji
642bed4b3e
nixos/tests/acme: fix on i686, improve timing (#40410)
... to prevent non-deterministic failures
2018-05-13 19:59:59 +02:00
xeji
c482b41f40
Merge pull request #40373 from xeji/fix-mesos-test
nixos/mesos: fix non-deterministic service and test failure
2018-05-13 19:57:24 +02:00
Frederik Rietdijk
658b7c3f2e Merge master into staging 2018-05-13 12:13:25 +02:00
John Ericson
2c5d915200 Merge commit '92b7a814f26ee1d37e989431c18518c67285a332' into staging 2018-05-13 01:02:09 -04:00
Jan Malakhovski
095fe5b43d nixos: rename system.{stateVersion,defaultChannel} -> system.nixos.\1 2018-05-12 19:27:09 +00:00
xeji
a19cc36e1a
nixos/tests/mysql-backup: fix non-deterministic failure (#40258)
Sometimes failed because of delayed creation of the backup file.
2018-05-12 11:37:35 +02:00
Tim Steinbach
92cf881675
Merge pull request #40390 from xeji/kafka
nixos/tests/kafka: fix and refactor tests
2018-05-11 22:02:53 -04:00
Uli Baum
13f83ba05f nixos/tests/kafka: fix and refactor tests
- refactor into single file for all versions
- improve timing, prevent non-deterministic failures
- fix tests for i686-linux
2018-05-12 02:16:25 +02:00
John Ericson
ee4b56edd3 Merge remote-tracking branch 'upstream/master' into staging 2018-05-11 14:36:08 -04:00
Uli Baum
0d2a4ed49c nixos/tests/mesos: wait for all services and ports
to be available before sending requests.
Avoids non-deterministic test failure.
2018-05-11 19:26:35 +02:00
Uli Baum
840e5d8bda nixos/tests/graphite: fix test
- adapt netcat options to libressl-nc
- wait for services to be started and accepting connections
2018-05-10 23:30:56 +02:00
John Ericson
67db915a43 Merge remote-tracking branch 'upstream/master' into staging 2018-05-10 16:35:04 -04:00
xeji
558f4b3368
nixos/tests/plotinus: fix non-deterministic failure (#40239)
Test failed sometimes, likely because a window didn't get focus.
2018-05-10 19:38:02 +02:00
John Ericson
42f6e7c4e4 Merge remote-tracking branch 'upstream/master' into staging 2018-05-10 12:04:17 -04:00
Robert Schütz
da58afdd68 nixos/tests/home-assistant: print log before failing 2018-05-10 13:12:35 +02:00
Frederik Rietdijk
64c8c6dcb3 Merge master into staging 2018-05-10 09:30:56 +02:00
Uli Baum
844698c436 nixos/tests/statsd: fix non-deterministic failure
Test failed sometimes because the service took more time to start.
2018-05-09 12:38:09 +02:00
Matthew Bauer
6748534d83 Merge remote-tracking branch 'upstream/master' into staging 2018-05-08 09:36:00 -05:00
aszlig
78b4b90d6c
Merge pull request #39526 (improve dhparams)
This introduces an option that allows us to turn off stateful generation
of Diffie-Hellman parameters, which in some way is still "stateful" as
the generated DH params file is non-deterministic.

However what we can avoid with this is to have an increased surface for
failures during system startup, because generation of the parameters is
done during build-time.

Aside from adding a NixOS VM test it also restructures the type of the
security.dhparams.params option, so that it's a submodule.

A new defaultBitSize option is also there to allow users to set a
system-wide default.

I added a release notes entry that described what has changed and also
included a few notes for module developers using this module, as the
first usage already popped up in NixOS/nixpkgs#39507.

Thanks to @Ekleog and @abbradar for reviewing.
2018-05-08 02:09:46 +02:00
aszlig
81fc2c3509
nixos/dhparams: Add a defaultBitSize option
This allows to set the default bit size for all the Diffie-Hellman
parameters defined in security.dhparams.params and it's particularly
useful so that we can set it to a very low value in tests (so it doesn't
take ages to generate).

Regardless for the use in testing, this also has an impact in production
systems if the owner wants to set all of them to a different size than
2048, they don't need to set it individually for every params that are
set.

I've added a subtest to the "dhparams" NixOS test to ensure this is
working properly.

Signed-off-by: aszlig <aszlig@nix.build>
2018-05-07 04:58:52 +02:00
aszlig
1eeeceb9c7
nixos/nsd: Allow to configure root zone
When trying to run NSD to serve the root zone, one gets the following
error message:

error: illegal name: '.'

This is because the name of the zone is used as the derivation name for
building the zone file. However, Nix doesn't allow derivation names
starting with a period.

So whenever the zone is "." now, the file name generated is "root"
instead of ".".

I also added an assertion that makes sure the user sets
services.nsd.rootServer, otherwise NSD will fail at runtime because it
prevents serving the root zone without an explicit compile-time option.

Tested this by adding a root zone to the "nsd" NixOS VM test.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @hrdinka, @qknight
2018-05-07 04:05:41 +02:00
Uli Baum
c3eefe801a fleet: remove package, module, test
deprecated and unmaintained upstream
2018-05-05 00:28:16 +02:00
Uli Baum
f039bf9abc panamax: remove packages, module and test
was broken and depends on (deprecated) fleet
packages: panamax_api, panamax_ui
2018-05-05 00:27:15 +02:00
John Ericson
cf06e42d1c Merge remote-tracking branch 'upstream/master' into staging 2018-05-03 16:35:36 -04:00
Matthew Justin Bauer
eeb016e8f0
Merge branch 'staging' into fix-ncurses-darwin-extensions 2018-05-02 15:40:38 -05:00
Robin Gloster
fe9096ef09
Merge branch 'master' into docker-registry-enhancements 2018-05-02 13:12:57 +02:00
Michele Catalano
afd3136e8e
nixos/docker-registry: Add support for garbage collector to docker registry 2018-05-01 15:23:47 +02:00
Maximilian Bosch
593dc45141
nixos/docker-registry: cleanup module definition & enhance testcase
The following changes have been applied:

- the property `http.headers.X-Content-Type-Options` must a list of
  strings rather than a serialized list
- instead of `/etc/docker/registry/config.yml` the configuration will be
  written with `pkgs.writeText` and the store path will be used to run
  the registry. This reduces the risk of possible impurities by relying
  on the Nix store only.
- cleaned up the property paths to easy readability and reduce the
  verbosity.
- enhanced the testcase to ensure that digests can be deleted as well
- the `services.docker-registry.extraConfig` object will be merged with
  `registryConfig`

/cc @ironpinguin
2018-05-01 15:23:39 +02:00
Julien Langlois
519b64592d hitch: init at 1.4.8 + service + test (#39358)
Add the Hitch TLS reverse proxy as an option for TLS termination.
2018-05-01 10:36:36 +01:00
Maximilian Bosch
e12cc85b07
nixos/osquery: add test
Some time ago I fixed the broken package `osquery` (see #39336).
I had to test the package manually by starting the daemon locally,
however this doesn't ensure that the module is still functional.

In order to cover the package *and* the integration with the NixOS
module I thought that adding a testcase might be the best idea.

The current testcase does the following things:

* Starts an `osqueryd` service in a test machine with customized logger
  path and PID file

* Ensures that the `osqueryd.service` unit is running

* Checks if the customized flags (`pidfile`, `logger_path`) are applied
  to `osquery`.

* Performs a simple test query against the `etc_hosts` database to check
  if the basic funcitonality of `osquery` (storing system information into
  a database) works fine.
2018-04-30 16:49:38 +02:00
aszlig
1907120f23
nixos/tests/udisks2: Fix USB device hotplug
The usb_add and usb_del monitor commands have been removed in QEMU
version 2.12 (introduced in 3e3b39f173).

Quote from https://wiki.qemu.org/ChangeLog/2.12#Incompatible_changes:

> The deprecated HMP commands "usb_add" and "usb_del" have been removed.
> Use "device_add" and "device_del" as replacement instead.

So we're doing exactly that and the udisks2 test now works again.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @edolstra
2018-04-30 03:02:57 +02:00
aszlig
146cb02542
nixos/tests/hibernate: Fix netcat flags
I'm not sure why 024b501907 used -q 0
because even netcat-openbsd has the -N flag which IMO is the better way
to shutdown the socket on EOF.

Our default netcat implementation has changed once again[1] in
3c3b82234a and we're now using LibreSSL's
implementation, which doesn't have a -q flag.

See https://github.com/NixOS/nixpkgs/pull/39634 for the pull request
introducing the switch.

[1]: https://github.com/NixOS/nixpkgs/pull/19982

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @matthewbauer, @dtzWill, @Mic92
2018-04-29 23:46:47 +02:00
aszlig
97adb03a9e
nixos/tests/predictable-interface-names: Refactor
The Nix expression here is really hard to read with multiple (and
unnecessarily) nested lets and it also generates attribute names based
on the derivation generated by makeTest, which will result in these
attribute names:

  * vm-test-run-predictableInterfaceNames
  * vm-test-run-predictableInterfaceNames-with-networkd
  * vm-test-run-unpredictableInterfaceNames
  * vm-test-run-unpredictableInterfaceNames-with-networkd

With the refactor the attribute names are now:

  * predictable
  * predictableNetworkd
  * unpredictable
  * unpredictableNetworkd

So now the code is even shorter and IMHO slightly more readable.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @symphorien, @fpletz, @adisbladis
2018-04-29 15:36:56 +02:00
Tim Steinbach
9774c8a0de
linux-copperhead: Fix test 2018-04-28 20:20:47 +00:00
aszlig
1b1b76f70a
nixos/tests/chromium: Wait 10s after new window
This is a very very very ugly workaround and it's because Chromium seems
to eat keystroke for a few seconds after a new window is created.

I haven't found a better solution yet, so let's at least unbreak the
test until we come up with a better way.

Thanks to @vcunat for bringing this to my attention and also doing the
initial bisect.

The change that brought up this problem was 2b29e40153,
which updated Chromium from version 65.0.3325.181 to version
66.0.3359.117. Unfortunately the upstream changelog[1] is way too large
to actually guess what the breaking change is.

[1]: https://chromium.googlesource.com/chromium/src/+log/65.0.3325.181..66.0.3359.117?pretty=fuller&n=10000

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @bendlas, @vcunat
2018-04-28 17:35:13 +02:00
aszlig
3e11ff6e0d
nixos/dhparams: Introduce a 'stateful' option
This option allows us to turn off stateful generation of Diffie-Hellman
parameters, which in some way is still stateful as the generated DH
params file is non-deterministic.

However what we can avoid with this is to have an increased surface for
failures during system startup, because generation of the parameters is
done during build-time.

Another advantage of this is that we no longer need to take care of
cleaning up the files that are no longer used and in my humble opinion I
would have preferred that #11505 (which puts the dhparams in the Nix
store) would have been merged instead of #22634 (which we have now).

Luckily we can still change that and this change gives the user the
option to put the dhparams into the Nix store.

Beside of the more obvious advantages pointed out here, this also
effects test runtime if more services are starting to use this (for
example see #39507 and #39288), because generating DH params could take
a long time depending on the bit size which adds up to test runtime.

If we generate the DH params in a separate derivation, subsequent test
runs won't need to wait for DH params generation during bootup.

Of course, tests could still mock this by force-disabling the service
and adding a service or activation script that places pre-generated DH
params in /var/lib/dhparams but this would make tests less readable and
the workaround would have to be made for each test affected.

Note that the 'stateful' option is still true by default so that we are
backwards-compatible with existing systems.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @Ekleog, @abbradar, @fpletz
2018-04-26 08:04:50 +02:00
aszlig
761266bd18
nixos/dhparams: Turn params into a submodule
We're going to implement an option which allows us to turn off stateful
handling of Diffie-Hellman parameter files by putting them into the Nix
store.

However, modules now might need a way to reference these files, so we
add a now path option to every param specified, which carries a
read-only value of the path where to find the corresponding DH params
file.

I've also improved the description of security.dhparams.params a bit so
that it uses <warning/> and <note/>.

The NixOS VM test also reflects this change and checks whether the old
way to specify the bit size still works.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @Ekleog
2018-04-26 08:04:48 +02:00
aszlig
4de774a63b
nixos/dhparams: Add a VM test
We're going to make changes to the dhparams module so we really want to
make sure we don't break it, so having a NixOS VM test is to make sure
we don't blow things up and can iterate on it.

Signed-off-by: aszlig <aszlig@nix.build>
Cc: @Ekleog
2018-04-26 08:04:45 +02:00
Matthew Justin Bauer
e4d2d32a32
Merge pull request #33679 from flokli/deluge-module
Deluge: use mkEnableOption, add test
2018-04-25 14:54:34 -05:00
Jan Tojnar
ad589329e7
nixos/release.nix: add tests.gdk-pixbuf 2018-04-25 18:37:44 +02:00
Sarah Brofeldt
25abc29f47
Merge pull request #39473 from xeji/update-keymap-test
nixos/tests/keymap: wait for xdotool to succeed
2018-04-25 11:17:53 +02:00
xeji
6891bda370 nixos/tests/keymap: wait for xdotool to succeed
xdotool failed in rare cases when a window was already created
but not yet decorated by the window manager.
also prevent a (never observed but possible) race condition
2018-04-25 10:16:52 +02:00
Peter Hoeg
45f1205bab
Merge pull request #39304 from peterhoeg/f/ha
home-assistant: add a few knobs and make config YAML
2018-04-25 01:35:12 +00:00
Sarah Brofeldt
65abd2e63f
Merge pull request #39400 from xeji/improve-keymap-tests
nixos/tests/keymap: improve keymap tests
2018-04-24 11:49:53 +02:00
xeji
84a6e18947 nixos/tests/keymap: improve keymap tests
simplify tests, prevent timeouts and non-deterministic failures
2018-04-24 11:13:48 +02:00
Peter Hoeg
b886faa6b6 home-assistant: use remarshal to convert configuration to YAML
HA doesn't mind the configuration being JSON instead of YAML but since YAML is
the official language, use that as it allows users to easily exchange config
data with other parties in the community.
2018-04-23 16:53:13 +08:00
Matthew Justin Bauer
e4717c902f
Merge pull request #27958 from LumiGuide/strongswan-swanctl
nixos: add the strongswan-swanctl service
2018-04-21 15:47:39 -05:00
Jörg Thalheim
dc0653f54f
Merge pull request #38816 from Ekleog/dovecot-lda-test
dovecot module: test dovecot's LDA
2018-04-21 19:55:23 +01:00
Jörg Thalheim
bf6998bdfa
Merge pull request #39297 from xeji/tests/gnome3-gdm
nixos/tests/gnome3-gdm: fix broken test
2018-04-21 11:40:52 +01:00
xeji
4c14202bd1 nixos/tests/gnome3-gdm: fix broken test
test always failed due to multiple bugs
2018-04-21 12:09:30 +02:00
Matthew Justin Bauer
6b11a5ff13
Merge pull request #38979 from xeji/tests-systemd
nixos/tests/systemd: fix broken test
2018-04-20 18:04:12 -05:00
aszlig
a9cd8ef23e
nixos/tests/containers-imperative: Fix eval
The commit c6f7d43678 changed the system
attribute to be below config.nixpkgs.localSystem, but the test still
uses the old attribute.

I have not tested whether the test actually succeeds but just checked
whether evaluation works and it evaluates successfully now.

Signed-off-by: aszlig <aszlig@nix.build>
2018-04-20 12:25:04 +02:00
xeji
9d5af5871d nixos/test/systemd: fix broken test
timing bug resulted in sporadic test failures on hydra
2018-04-16 00:43:33 +02:00
Daiderd Jordan
d538fc06e2
docker-tools: add a test for permissions issues with AUFS/overlay
docker# [   11.054736] d24d6cdd57c9[763]: /bin/bash: error while loading
shared libraries: libreadline.so.7: cannot open shared object file:
Permission denied
docker# /bin/bash: error while loading shared libraries:
libreadline.so.7: cannot open shared object file: Permission denied
docker: exit status 127
docker: output:
error: command `docker run --rm -u 1000:1000 bash /bin/bash --version'
did not succeed (exit code 127)
command `docker run --rm -u 1000:1000 bash /bin/bash --version' did not
succeed (exit code 127)
2018-04-14 14:11:14 +02:00
Tim Steinbach
0625f77256
Fix kernel-copperhead test 2018-04-13 09:02:26 -04:00
Florian Klink
fe840cd333 deluge: add test 2018-04-13 10:30:22 +02:00
Léo Gaspard
4fddb8b9c3
dovecot module: test dovecot's LDA
That's apparently not enough to catch the bug I ran into with the update
to 2.3.1, but at least it will check the LDA appears to work.
2018-04-12 01:35:14 +02:00
Michael Raskin
c78c764547 nixos/tests.chromium: actually notice the tab crash
Argh, debugging NixOS tests takes forever…

(cherry picked from commit 1afb6e790a)
2018-04-09 13:21:53 +02:00
Maximilian Bosch
50a34e55b2
nixos/iftop: add module
This patch is heavily inspired by bd0d8ed807 which added
a setcap wrapper for `mtr` in order to allow running `mtr` without
`sudo`. The need for the capability `cap_net_raw` that can be registered using
`setcap` has been documented in the Arch Wiki: https://wiki.archlinux.org/index.php/Capabilities#iftop

A simple testcase has been added which starts two machines, one with a
setcap wrapper for `iftop`, one without. Both testcases monitor the
bandwidth usage of the machine using the options `-t -s 1` once, the
machine with setcap wrapper is expected to succeed, the `iftop` on the
machine without setcap wrapper is expected to return a non-zero exit
code.
2018-04-07 15:06:51 +02:00
Corey O'Connor
d0d05024d1 nixos/transmission: add basic nixos test 2018-04-05 22:07:49 +02:00