nixpkgs/nixos/tests
Arian van Putten 604b7c139f Fix letsencrypt (#60219)
* nixos/acme: Fix ordering of cert requests

When subsequent certificates would be added, they would
not wake up nginx correctly due to target units only being triggered
once. We now added more fine-grained systemd dependencies to make sure
nginx always is aware of new certificates and doesn't restart too early
resulting in a crash.

Furthermore, the acme module has been refactored. Mostly to get
rid of the deprecated PermissionStartOnly systemd options which were
deprecated. Below is a summary of changes made.

* Use SERVICE_RESULT to determine status
This was added in systemd v232. we don't have to keep track
of the EXITCODE ourselves anymore.

* Add regression test for requesting mutliple domains

* Deprecate 'directory' option
We now use systemd's StateDirectory option to manage
create and permissions of the acme state directory.

* The webroot is created using a systemd.tmpfiles.rules rule
instead of the preStart script.

* Depend on certs directly

By getting rid of the target units, we make sure ordering
is correct in the case that you add new certs after already
having deployed some.

Reason it broke before:  acme-certificates.target would
be in active state, and if you then add a new cert, it
would still be active and hence nginx would restart
without even requesting a new cert. Not good!  We
make the dependencies more fine-grained now. this should fix that

* Remove activationDelay option

It complicated the code a lot, and is rather arbitrary. What if
your activation script takes more than activationDelay seconds?

Instead, one should use systemd dependencies to make sure some
action happens before setting the certificate live.

e.g. If you want to wait until your cert is published in DNS DANE /
TLSA, you could create a unit that blocks until it appears in DNS:

```
RequiredBy=acme-${cert}.service
After=acme-${cert}.service
ExecStart=publish-wait-for-dns-script
```
2019-08-29 16:32:59 +02:00
..
common nixos/tests/acme: Use exact match in TOS location 2019-04-06 12:51:56 +02:00
google-oslogin nixos/tests: add google-oslogin test 2018-12-21 17:52:37 +01:00
hadoop
hitch
hocker-fetchdocker
hydra treewide: use dontUnpack 2019-07-01 04:23:51 -04:00
initrd-network-ssh
kerberos nixos/tests/kerberos: fix evaluation 2019-01-11 04:36:51 +00:00
krb5
kubernetes nixos/kubernetes: Stabilize services startup across machines 2019-03-03 19:39:02 +01:00
nextcloud nixos/nextcloud: write config to additional config file 2019-07-22 18:29:52 +02:00
wireguard wireguard: add generatePrivateKeyFile option + test 2019-04-24 07:46:01 -04:00
xmpp nixos/ejabberd: fix test for new release 2019-08-20 11:09:40 +02:00
acme.nix Fix letsencrypt (#60219) 2019-08-29 16:32:59 +02:00
all-tests.nix Merge pull request #66859 from worldofpeace/xfce4-14-module 2019-08-27 22:37:03 -04:00
ammonite.nix
atd.nix
automysqlbackup.nix automysqlinit: init at 3.0_rc6 2019-04-15 21:51:55 -04:00
avahi.nix nixos/tests/avahi: add test for extra service definitions 2019-06-04 02:09:59 +02:00
bcachefs.nix
beanstalkd.nix nixos/beanstalkd: update test to use python3 instead of python2 2019-02-22 15:00:20 -05:00
beegfs.nix
bees.nix nixos.tests.bees: init 2018-11-29 20:27:47 -06:00
bind.nix
bittorrent.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
blivet.nix
boot-stage1.nix
boot.nix boot tests: don't use globbing 2019-07-22 14:44:53 +03:00
borgbackup.nix nixos/tests/borgbackup: test borg mount 2018-12-09 18:17:27 +01:00
buildbot.nix buildbot: 1.8.1 -> 2.1.0 2019-03-22 18:43:15 -04:00
cadvisor.nix
cassandra.nix nixos/tests/cassandra: Test jmxPort 2019-07-31 00:55:04 +02:00
ceph.nix tests/docs: remove remnants of old allowPing default (#49198) 2018-10-30 22:26:43 +01:00
certmgr.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
cfssl.nix
chromium.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
cjdns.nix tests/docs: remove remnants of old allowPing default (#49198) 2018-10-30 22:26:43 +01:00
clickhouse.nix clickhouse: fix module and package runtime 2018-12-20 13:03:41 +01:00
cloud-init.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
cockroachdb.nix nixos/cockroachdb: create new service 2018-12-01 19:07:49 -06:00
codimd.nix nixos/tests: fix non-determinism for good 2018-10-10 14:57:43 +02:00
colord.nix nixos/tests/colord: init 2019-03-18 08:05:42 -04:00
containers-bridge.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
containers-ephemeral.nix nixos/containers: add 'ephemeral' option 2019-08-19 15:21:35 +02:00
containers-extra_veth.nix nixos/containers: explicitly set link up on host for extraVeths 2019-01-13 11:27:39 +01:00
containers-hosts.nix
containers-imperative.nix nixosTests.containers-imperative: add tmpfiles test 2019-06-03 15:05:18 +02:00
containers-ipv4.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
containers-ipv6.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
containers-macvlans.nix
containers-physical_interfaces.nix
containers-portforward.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
containers-reloadable.nix
containers-restart_networking.nix tests/docs: remove remnants of old allowPing default (#49198) 2018-10-30 22:26:43 +01:00
containers-tmpfs.nix
couchdb.nix
deluge.nix nixos/deluge: user, group and web firewall opts. 2019-07-02 22:26:34 +01:00
dhparams.nix
dnscrypt-proxy.nix
docker-containers.nix NixOS: Run Docker containers as declarative systemd services (#55179) 2019-03-25 00:59:09 +02:00
docker-edge.nix
docker-preloader.nix nixos/dockerPreloader: preload docker images (#49379) 2018-11-03 01:00:53 +01:00
docker-registry.nix
docker-tools-overlay.nix
docker-tools.nix nixos/tests/docker-tools: check layer sharing with buildLayeredImage 2019-06-06 15:03:08 +02:00
docker.nix
documize.nix documize-community: init at 2.2.1 2019-04-08 23:54:57 +02:00
dovecot.nix
ec2.nix nixos/tests/ec2: reuse ssh keys from ssh-keys.nix 2019-02-11 20:58:45 +01:00
ecryptfs.nix
elk.nix nixos/journalbeat: support journalbeat >= 6 & add test 2019-05-10 15:41:41 +02:00
emacs-daemon.nix
env.nix
etcd-cluster.nix nixos/tests/etcd-cluster: be more lenient about member addition 2019-07-10 00:42:48 +00:00
etcd.nix
ferm.nix
firefox.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
firewall.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
fish.nix nixos/fish: generate autocompletions from man pages 2019-02-27 12:23:48 +01:00
flannel.nix nixos/flannel: fix flannel nixos test, add test to all-tests.nix 2019-02-12 18:26:39 +01:00
flatpak-builder.nix nixosTests.flatpak-builder: enable portals 2019-07-30 23:52:25 -04:00
flatpak.nix
fluentd.nix fluentd: add simple test 2019-07-30 00:37:21 +09:00
fsck.nix
fwupd.nix fwupd: fix installed tests 2019-01-28 00:15:00 +01:00
gdk-pixbuf.nix gdk-pixbuf: rename from gdk_pixbuf 2019-07-22 18:50:57 -04:00
gitea.nix nixos/gitea: utilize mysql|postgresql.ensureDatabases & ensureUsers to provision databases 2019-06-10 20:32:28 -04:00
gitlab.nix nixos/gitlab: improved test to check download of repository archives 2019-03-12 15:04:45 +00:00
gitolite.nix
gjs.nix
glusterfs.nix nixos/glusterfs: add test 2019-08-18 18:58:00 +02:00
gnome3-xorg.nix nixosTests.gnome3{xorg}: add gnome3 maintainers 2019-08-06 20:51:44 -04:00
gnome3.nix nixosTests.gnome3{xorg}: add gnome3 maintainers 2019-08-06 20:51:44 -04:00
gnome-photos.nix gnome-photos: add installed tests 2019-08-23 19:31:14 +02:00
gocd-agent.nix
gocd-server.nix
grafana.nix nixos/tests: extend grafana test 2019-07-15 18:33:26 +02:00
graphene.nix nixosTests.graphene: init 2019-05-16 21:29:17 -04:00
graphite.nix
graylog.nix nixos/graylog: add test 2019-07-09 23:57:45 +02:00
haka.nix
handbrake.nix tests: handbrake: test transcoding to MKV and MP4. 2018-11-12 08:19:58 +01:00
haproxy.nix
hardened.nix Merge pull request #60187 from joachifm/feat/configurable-malloc 2019-05-12 15:18:07 +00:00
hibernate.nix
home-assistant.nix home-assistant: 0.89.2 -> 0.90.1 (#58017) 2019-03-24 19:45:35 +01:00
hound.nix
i3wm.nix nixos/tests/i3wm: fix terminal title 2018-12-09 18:29:51 +01:00
icingaweb2.nix nixos/icingaweb: Fix module path; Add test 2019-07-07 03:03:59 +02:00
iftop.nix
incron.nix nixos/incron: added nixos test to ensure expected behaviour 2018-11-10 20:54:10 -05:00
influxdb.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
initdb.nix postgresql: running initdb from command line now works (#65309) 2019-08-07 14:17:36 +03:00
initrd-network.nix
installer.nix nixos/tests: add test for showing child configuration in grub menu 2019-07-11 17:40:25 +05:30
ipfs.nix
ipv6.nix nixos/network-interfaces: always apply privacy extensions 2019-06-07 21:43:29 +02:00
jackett.nix nixos/jackett: Add test for jackett to ensure startup 2019-01-25 07:12:41 +01:00
jellyfin.nix nixos/jellyfin: add simple test 2019-04-28 11:03:51 +02:00
jenkins.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
jormungandr.nix nixos/jormungandr: adding genesis tests 2019-08-25 18:33:13 +02:00
kafka.nix kafka: Add test for 2.2 2019-04-01 08:39:25 -04:00
kernel-latest.nix
kernel-lts.nix
kernel-testing.nix linux: Fix kernel-testing test 2019-04-01 10:04:54 -04:00
kexec.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
keymap.nix nixos.tests.keymap: use new name of the colemak/en-latin9 keymap 2018-11-20 04:11:39 +01:00
knot.nix nixos/knot: init 2019-03-14 01:28:53 +01:00
ldap.nix nixos/ldap: set proper User= and Group= for nslcd service 2019-03-28 13:08:47 +01:00
leaps.nix
libxmlb.nix nixos/tests/libxmlb: init 2019-08-23 01:34:48 +02:00
lidarr.nix nixos/lidarr: Add test for lidarr to ensure startup 2019-01-25 07:12:08 +01:00
lightdm.nix nixosTests.lightdm: add me to maintainers 2019-08-06 20:51:44 -04:00
limesurvey.nix nixos/limesurvey: add basic nixos test 2019-05-28 23:02:38 -04:00
login.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
loki.nix nixos/tests: add test for loki 2019-07-08 16:10:00 +02:00
magnetico.nix nixos/magnetico: add test 2019-08-28 14:19:24 +02:00
mailcatcher.nix nixos/mailcatcher: fix test to be compatible with mailcatcher 7.x series 2019-03-28 11:15:20 -04:00
make-test.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
mathics.nix
matrix-synapse.nix nixos/tests/matrix-synapse: generate ca and certificates 2019-02-06 16:21:07 +01:00
mediawiki.nix nixos/mediawiki: init service to replace httpd subservice 2019-07-23 22:02:33 -04:00
memcached.nix
mesos_test.py
mesos.nix
metabase.nix tests: adding metabase service test 2019-08-18 13:44:26 +02:00
miniflux.nix miniflux: add service 2019-04-06 03:52:15 +02:00
minio.nix minio: init at 4.0.13 2019-03-29 15:50:36 +01:00
misc.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
mongodb.nix mongodb: Add authentication support 2019-05-25 18:09:30 +09:00
moodle.nix nixos/moodle: init service 2019-08-25 08:12:28 -04:00
morty.nix
mosquitto.nix nixos/mosquitto: make the tests run 2019-06-24 13:59:53 +08:00
mpd.nix
mpich-example.c
mumble.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
munin.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
mutable-users.nix
mxisd.nix modules: add mxisd with test 2018-11-25 14:24:10 +01:00
mysql-backup.nix
mysql-replication.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
mysql.nix nixos/mysql: test the mysql package, not just mariadb 2019-08-04 10:41:55 -04:00
nat.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
ndppd.nix nixos/tests/ndppd: fix eval warnings 2019-02-11 03:12:56 +01:00
neo4j.nix neo4j: add neo4j test 2019-02-01 16:01:08 +01:00
nesting.nix nixos: Make nesting.children work in NixOS tests 2019-05-29 12:50:49 +02:00
netdata.nix
networking-proxy.nix
networking.nix Merge branch 'master' into flip-map-foreach 2019-08-05 14:09:28 +03:00
nexus.nix nixos/nexus: increase disk size of VM test to 8GB 2019-01-10 22:44:26 +01:00
nfs.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
nghttpx.nix nixos/tests: nghttpx: /var/run -> /run 2019-03-24 21:15:35 +01:00
nginx-sso.nix nixos/tests: add nginx-sso basic functionality test 2019-01-29 19:54:14 +01:00
nginx.nix nginx: expose generated config and allow nginx reloads (#57429) 2019-08-21 16:52:46 +03:00
nix-ssh-serve.nix
nixos-generate-config.nix nixos-generate-config: enable overriding configuration.nix 2019-08-08 17:00:10 +02:00
novacomd.nix
nsd.nix
nzbget.nix nixos/nzbget: fix broken service, add a nixos test, as well as some general improvements 2019-04-25 20:28:39 -04:00
openldap.nix nixos/openldap: add new options 2019-04-01 17:24:33 +02:00
opensmtpd.nix dovecot, opensmtpd: add link to test in meta.tests 2018-10-30 21:31:39 +09:00
openssh.nix sshd: fix startWhenNeeded and listenAddresses combination 2019-02-25 00:51:58 +01:00
openstack-image.nix nixos/tests/ec2: reuse ssh keys from ssh-keys.nix 2019-02-11 20:58:45 +01:00
osquery.nix nixos/tests: osquery: /var/run -> /run 2019-03-24 21:15:34 +01:00
osrm-backend.nix nixos/tests: add osrm-backend test 2019-01-25 00:43:34 +01:00
ostree.nix gdk-pixbuf: rename from gdk_pixbuf 2019-07-22 18:50:57 -04:00
overlayfs.nix nixos/overlayfs: add test 2019-03-15 15:15:32 +01:00
packagekit.nix nixos/packagekit: add test 2019-04-24 22:31:36 +08:00
pam-oath-login.nix
pam-u2f.nix nixos/pam: refactor U2F, docs about u2f_keys path (#54756) 2019-01-29 08:45:26 -08:00
pantheon.nix pantheon: init a 5.0 2019-01-24 20:54:14 +00:00
paperless.nix paperless service: init 2019-05-08 09:26:32 +02:00
partition.nix
pdns-recursor.nix tests/pdns-recursor: use waitForOpenPort as port check 2019-04-05 02:30:28 +01:00
peerflix.nix
pgjwt.nix
pgmanage.nix
php-pcre.nix nixos/tests/php-pcre: replace usage of deprecated services.httpd.extraSubservices 2019-08-15 21:00:27 -04:00
plasma5.nix nixos/plasma5: disable ocr tests 2018-10-28 19:13:12 +00:00
plotinus.nix
postgis.nix postgresql: cleanup postgis (#54396) 2019-01-26 21:15:43 +02:00
postgresql-wal-receiver.nix nixos/postgresql-wal-receiver: add module (#63799) 2019-08-11 20:09:42 +03:00
postgresql.nix nixos/tests/postgresql: fix regression from #55106 2019-02-04 03:56:43 +01:00
powerdns.nix
predictable-interface-names.nix nixos/tests/predictable-interfaces: fix failure on aarch64 2019-03-19 23:20:23 +01:00
printing.nix cups: add myself as maintainer 2019-08-14 11:47:48 -04:00
prometheus-2.nix nixos/tests/prometheus-2.nix: increase diskSize of the store machine 2019-07-28 13:28:27 +02:00
prometheus-exporters.nix nixos/prometheus-exporters: use DynamicUser by default 2019-08-02 18:50:01 +02:00
prometheus.nix nixos/prometheus: require one alertmanager configuration parameter 2018-11-23 19:45:17 +01:00
proxy.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
quagga.nix tests/docs: remove remnants of old allowPing default (#49198) 2018-10-30 22:26:43 +01:00
quake3.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
rabbitmq.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
radarr.nix nixos/radarr: Add test for radarr to ensure startup 2019-01-25 07:11:28 +01:00
radicale.nix nixos/tests/radicale: be a bit more permissive when matching logs 2019-06-03 15:05:14 +02:00
redmine.nix nixos/redmine: add database.createLocally option 2019-06-30 07:24:18 -04:00
riak.nix
roundcube.nix nixos/roundcube: add package option 2019-02-08 13:35:09 +00:00
rspamd.nix nixos/tests/rspamd: fix eval warnings 2019-02-11 02:59:55 +01:00
rss2email.nix rss2email module: init 2018-11-15 23:44:16 +09:00
rsyslogd.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
run-in-machine.nix nixos/tests: Fix wrong arch in runInMachine test 2018-12-07 05:56:53 +01:00
rxe.nix
samba.nix
sddm.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
signal-desktop.nix nixosTests.signal-desktop: add test 2019-05-23 00:56:46 +02:00
simple.nix
slim.nix
slurm.nix nixos/slurm: fix test 2019-06-05 14:14:46 +02:00
smokeping.nix
snapper.nix
solr.nix solr: init at 8.0.0 2019-04-10 20:12:41 -04:00
sonarr.nix nixos/sonarr: Add test for sonarr to ensure startup 2019-01-25 07:10:40 +01:00
ssh-keys.nix
strongswan-swanctl.nix
sudo.nix
switch-test.nix nixos/tests/switch-test: Ensures the test fails on failure (#55744) 2019-02-14 22:55:16 +01:00
syncthing-init.nix syncthing: 1.1.4 -> 1.2.1 2019-08-11 08:35:04 +07:00
syncthing-relay.nix syncthing-relay module: init 2018-11-19 01:09:54 +01:00
systemd-confinement.nix nixos/confinement: Allow to include the full unit 2019-03-14 20:04:33 +01:00
systemd-networkd-wireguard.nix systemd-networkd: add tests 2019-08-21 11:11:28 +02:00
systemd-timesyncd.nix nixos/systemd: migrate systemd-timesync state when required 2019-06-03 15:05:19 +02:00
systemd.nix nixos/systemd: add cgroup accounting test 2019-08-25 22:26:12 +02:00
taskserver.nix
telegraf.nix nixos/telegraf: add test 2019-01-21 11:37:20 +00:00
testdb.sql
tiddlywiki.nix nixos/tiddlywiki: init 2019-07-16 23:12:16 +01:00
timezone.nix
tinydns.nix nixos: add test for tinydns 2019-05-16 23:46:17 +02:00
tor.nix
transmission.nix
trezord.nix tests: adding trezord 2019-08-16 17:05:13 +02:00
udisks2.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
upnp.nix nixos/miniupnpd: update test to use pkgs.miniupnpc_2 2019-05-12 07:53:30 -04:00
uwsgi.nix nixos: add test for uwsgi 2019-05-27 23:03:22 +02:00
vault.nix
virtualbox.nix virtualbox: 5.2.28 -> 6.0.6 2019-05-09 23:36:57 +02:00
wordpress.nix nixos/wordpress: create module to replace the httpd subservice 2019-07-03 11:47:33 -04:00
xautolock.nix
xdg-desktop-portal.nix
xfce4-14.nix nixosTests.xfce4-14: init 2019-08-21 22:04:29 -04:00
xfce.nix Remove myself as maintainer from packages 2019-02-22 16:14:13 +01:00
xmonad.nix Merge pull request #51206 from krebs/xmonad-config 2019-05-24 18:37:55 +00:00
xrdp.nix
xss-lock.nix nixos/xss-lock: add testcase for lockerCommand with several CLI options. 2019-05-12 03:22:29 +02:00
yabar.nix
zfs.nix tests: refactor to carry the package set as an argument 2018-11-11 23:11:45 +09:00
zookeeper.nix