-
-
Notifications
You must be signed in to change notification settings - Fork 15.1k
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/tests: Leftover tasks towards unified Python integration tests #72828
Comments
some tests updated in #72810, which was merged. |
See #72835 (comment). With |
It would be nice if the driver had type annotations and was checked with mypy. |
would also help with IDE experience, as it will warn you of type mismatches. At least pycharm will ;) |
I'm thinking it's a good idea to have the perl driver removed on unstable very soon. |
agreed |
@symphorien I rebased your branch onto latest master, and got further until this:
The machine doesn't hang anymore, and the failure also exists like this in master. Can you take another look, and maybe open a PR to carry the discussion over there? |
Not in the coming days. |
Related to NixOS#72828 Replaces and closes NixOS#76708 Looks like `nix ping-store` does not output anything anymore but still fails when the connection does not work.
If someone has bandwidth, we could use some eyes on #94858 to remove quite a big piece of perl test code. :) |
With all remaining tests ported over, I opened #96396 removing the (now unused) perl code. Thanks a lot for everyone doing the porting! :-) |
Soo proud that we did this ✨ |
I marked this as stale due to inactivity. → More info |
Thanks to #71684 being merged recently, we do now have a test driver implementation in Python that allows for writing the imperative part of NixOS integration tests in Python instead of Perl.
Thanks @flokli @edolstra @Lassulus @adisbladis @domenkozar @garbas @jonringer for the support and @blitz @jtraue @marijanp for helping me porting the remaining Perl tests to Python.
In order to finish this project, we are going to perform the following tasks over the next weeks/months:
dumpTTYContents
Port remaining test-driver functions to python #72943forwardPort
Port remaining test-driver functions to python #72943getWindowNames
Nixos integration test ports #72835requireActiveUnit
Nixos integration test ports #72835waitForWindow
waitUntilTTYMatches
emptyDiskImages
behaviour nixos test driver doesn't work with multiple emptyDiskImages #73559Collect kernel coverage data after test finished(as per nixos/qemu-vm: Option to use squashfs Nix store closure instead of virtfs access to host's store #72354 (comment)), removal PR nixos/testing: remove remaining coverage-data logic #97231log
variable)cockroachdb
nixosTests.cockroachdb: port to python #73934 nixosTests.cockroachdb: Port to python #80047docker-containers
broken: port nixosTests.docker-containers: Port to python #80049 (was renamed tooci-containers
in the meantime and fixed)docker-preloader
broken: dockerPreloader fails due to "read-only file system" error #74143, port nixosTests.docker-preloader: Port to Python #80051docker-tools
broken: docker-tools test fails to run nix image #75081, port nixosTests.docker-tools: Port to Python #80048ec2
nixosTests.ec2: Port tests that depend on common/ec2.nix #79696hardened
nixosTests.hardened: port to python #76708krb5/deprecated-config
nixosTests.krb5: Port to python #80130krb5/example-config
nixosTests.krb5: Port to python #80130kubernetes/*
openstack-image
nixosTests.ec2: Port tests that depend on common/ec2.nix #79696partition
(test deleted in nixos/tests/partition.nix: remove #87084)redmine
(fixed: nixosTests.redmine is broken #80061) nixosTests.redmine: Port to python #85747rsyslogd
nixosTests.rsyslogd: Port to python #80096run-in-machine
nixosTests.run-in-machine: Port to Python #80099systemd-confinement
nixosTests.systemd-confinement: Port to Python #80103taskserver
nixosTests.taskserver: Port to python #93413virtualbox
nixosTests.virtualbox: Port to python #94858os-prober
nixos/tests: Leftover tasks towards unified Python integration tests #72828 (comment)acme
ammonite
atd
Port tests to Python #72833automysqlbackup
avahi
Port tests to Python #72833babeld
Port tests to Python #72833 nixos/tests: migrate my tests to python #72834bcachefs
Port tests to Python #72833beanstalkd
Port tests to Python #72833bees
nixosTests.bees: port to python #74001bind
Port tests to Python #72833bittorrent
blivet
(broken, see nixos/tests/blivet: times out #33496)boot-stage1
Port tests to Python #72833borgbackup
Port tests to Python #72833buildbot
nixosTests: Port more tests #78556caddy
Port tests to Python #72935cadvisor
Port tests to Python #72935cassandra
nixos/cassandra: Port test to python #72897ceph-multi-node
WIP: nixos/ceph: port tests to python #73190ceph-single-node
WIP: nixos/ceph: port tests to python #73190certmgr
Port tests to Python #72935cfssl
Port tests to Python #72935chromium
nixosTests.chromium: Port to Python #79352cjdns
Port tests to Python #72935clickhouse
Port tests to python #73131cloud-init
Port tests to Python #72935codimd
nixos/codimd: port test to python test-driver #74036colord
Port tests to Python #72935containers-bridge
Nixos test containers python port #74218containers-ephemeral
nixosTests.containers*: port to python #74196containers-extra_veth
nixosTests.containers*: port rest to python #74761containers-hosts
nixosTests.containers*: port to python #74196containers-imperative
Nixos test containers python port #74218containers-ipv4
Nixos test containers python port #74218containers-ipv6
Nixos test containers python port #74218containers-macvlans
nixosTests.containers*: port rest to python #74761containers-physical_interfaces
nixosTests.containers*: port rest to python #74761containers-portforward
nixosTests.containers*: port rest to python #74761containers-reloadable
nixosTests.containers*: port to python #74196containers-restart_networking
nixosTests.containers*: port rest to python #74761containers-tmpfs
nixosTests.containers*: port to python #74196couchdb
Port tests to Python #72935deluge
Port tests to python #73131dhparams
Nixos tests ports #75084dnscrypt-proxy
Port tests to Python #72935docker-edge
docker-registry
nixos/docker-registry: port test to python test-driver #74033docker-tools-overlay
Nixos tests ports #75084docker
Port tests to Python #72935documize
Port tests to Python #72935dovecot
nixosTests.dovecot: port test to python #74004ecryptfs
Nixos tests ports #75084emacs-daemon
env
Nixos tests ports #75084etcd-cluster
nixosTests.etcd*: port to python #74005etcd
nixosTests.etcd*: port to python #74005fancontrol
Port tests to python #73131ferm
nixos/ferm: port test to python #74513firefox
Nixos integration test ports #72835firewall
Port tests to python #73131fish
Port tests to python #73131flannel
(broken nixos/tests/flannel fails #74941, PR nixosTests.flannel: port to python, unbreak #85252)flatpak-builder
flatpak
fluentd
Port tests to python #73131fontconfig-default-fonts
fsck
fwupd
gdk-pixbuf
gitlab
nixosTests.gitlab: port to python #73939gitolite
nixosTests.gitolite: port to python #74063gjs
glib-networking
glusterfs
nixosTests.glusterfs: port to python #74003gnome-photos
gnome3-xorg
nixosTests.gnome3-xorg: port to python/rewrite #73938gnome3
nixos/tests/gnome3: port to python #74943gocd-agent
nixosTest.gocd-{agent,server}: port to python #74082gocd-server
nixosTest.gocd-{agent,server}: port to python #74082google-oslogin/default
nixosTests.google-oslogin: port to python #74002gotify-server
nixos/gotify-server: port test to python test-driver #74034grafana
nixos/tests: port some tests to python (loki, grafana, pgjwt, initrd-ssh, exporters) #72904graphene
graphite
nixosTests.graphite: port to python and mark as broken #76562 (python-twisted dependencies fail already in Perl)graylog
nixos/graylog: port test to python test-driver #74040hadoop/hdfs
hadoop/yarn
haka
nixosTests.haka: port to python #76707handbrake
Port tests to python #73131haproxy
nixosTests.haproxy: port test to python #75459 Port NixOs tests to python #75695hibernate
Port tests to python #73131hitch/default
home-assistant
nixosTests.home-assistant: port to python #74126hound
Port tests to python #73131hydra/default
i3wm
nixos/tests/i3wm: port to python #74938icingaweb2
Port tests to python #73131iftop
ihatemoney
nixosTests: Port more tests #78556incron
Port tests to python #73131influxdb
nixosTests.influxdb: port to python #74069initrd-network-ssh/default
nixos/tests: port some tests to python (loki, grafana, pgjwt, initrd-ssh, exporters) #72904initrd-network
Port NixOs tests to python #75695installer
nixosTests.installer: Port installer and ZFS test to python #78670ipv6
nixosTests.ipv6: port to python #74758jackett
Port tests to python #73131jellyfin
jenkins
nixosTests.jenkins: port to python #74074kerberos/heimdal
nixos/kerberos: port tests to python #73961kerberos/mit
nixos/kerberos: port tests to python #73961kernel-latest
kernel-lts
kernel-testing
kexec
nixosTests.kexec: port to python and mark as broken #76560 (hangs forever already in Perl)keymap
nixosTests: Port more tests #78556knot
nixos/tests: migrate my tests to python #72834ldap
nixosTests.[open]ldap: port to python #74851leaps
Port NixOs tests to python #75695libgdata
libxmlb
lidarr
Port NixOs tests to python #75695lightdm
nixosTests.lightdm: port to python #73135limesurvey
(attempted in Port NixOs tests to python #75695, broke with python error on decoding incomplete utf-8 string), reattempt in nixosTests.limesurvey: port to python and drop badly utf encoded characters #78555login
loki
nixos/tests: port some tests to python (loki, grafana, pgjwt, initrd-ssh, exporters) #72904magnetico
mailcatcher
Port NixOs tests to python #75695matrix-synapse
Nixos integration test ports #72835mediawiki
memcached
nixosTests.memcached: port to python #74312metabase
Port tests to Python #72857minidlna
Port tests to python #73131miniflux
Port tests to python #73131minio
nixosTests.minio: port to python #74070misc
nixosTests.misc: port to python #79064mongodb
nixosTests.mongodb: port to python #73933moodle
Port tests to Python #72887morty
Port tests to Python #72887mosquitto
Mosquitto test python #73827mpd
nixosTests.mpd: port to python #73935mumble
nixosTests.mumble: port to python #76410munin
nixos/tests/munin: port to python #74935mutable-users
Port NixOS tests to python #75703mxisd
Port NixOS tests to python #75703mysql-backup
nixosTests.mysql*: port to python #73992mysql-replication
nixosTests.mysql*: port to python #73992mysql
nixosTests.mysql*: port to python #73992nat
nixosTests.nat: port to python #74754ndppd
a9a2717neo4j
nixosTests.neo4j: port test to python #73991nesting
Port NixOS tests to python #75703netdata
nixosTests.netdata: port to python #74078networkingProxy
nixosTests.networkingProxy: port to Python #78239networking
nixosTests.networking: Port tests to python #75721nextcloud/basic
nextcloud/with-mysql-and-memcached
nextcloud/with-postgresql-and-redis
nexus
nfs
nixos/nfs: Allow Kerberized NFS #73989nghttpx
Port NixOS tests to python #75703nginx-sso
nixosTests.nginx*: port to python #74072nginx
nixosTests.nginx*: port to python #74072nix-ssh-serve
nixosTests.nix-ssh-serve: port to python #73994nixos-generate-config
novacomd
Port NixOS tests to python #75703nsd
nixosTests.nsd: Port to python #80065nzbget
Port NixOS tests to python #75703openarena
openldap
nixosTests.[open]ldap: port to python #74851opensmtpd
opensmtpd: 6.4.2p1 -> 6.6.1p1 #72390openssh
orangefs
Port NixOS tests to python #75703osquery
nixosTests.osquery: port to python #74073, broken: osquery: remove #74081osrm-backend
Port NixOS tests to python #75703ostree
overlayfs
Port NixOS tests to python #75703packagekit
pam-oath-login
nixos/test: Use retry() in all looping functions that need timeouts #74898pam-u2f
nixosTests.pam-u2f: port test to python #75180pantheon
nixosTests.pantheon: port to python #73140paperless
Port NixOS tests to python #75701pdns-recursor
Port NixOS tests to python #75701peerflix
Port NixOS tests to python #75701pgjwt
nixos/tests: port some tests to python (loki, grafana, pgjwt, initrd-ssh, exporters) #72904pgmanage
Port NixOS tests to python #75701php-pcre
Port NixOS tests to python #75701plasma5
nixosTests.plasma5: port to python #73134plotinus
nixosTests.plotinus: Port to Python #80067postgis
Port NixOS tests to python #75701postgresql-wal-receiver
nixosTests.postgresql-wal-receiver is broken #80060nixosTests.postgresql-wal-receiver needs to be ported to python #96347powerdns
nixos/tinydns: port test to python #73059pppd
nixos/pppd: port test to python #73056printing
nixosTests.printing: Port to Python #79327prometheus-exporters
nixos/tests: port some tests to python (loki, grafana, pgjwt, initrd-ssh, exporters) #72904prometheus
nixos/prometheus: Port prometheus test to python #74055proxy
nixosTests.proxy: port to python #75462 nixosTests.limesurvey: port to python and drop badly utf encoded characters #78555quagga
Port NixOS tests to python #75701quake3
rabbitmq
nixosTests.rabbitmq: port to python #74123radarr
Port tests to Python #72887radicale
nixosTests.radicale: port to python #74764redis
Port tests to Python #72887riak
nixosTests.riak: port to python #74124roundcube
Port tests to Python #72887 Port tests to python #73131rspamd
nixosTests.rspamd: port to python #75464rss2email
Port tests to Python #72887rxe
nixosTests.rxe: port to python #73568samba
nixos/samba: use tmpfiles, port test to python #73080shiori
signal-desktop
Port tests to Python #72887simple
slurm
nixos/slurm: fix test and X11 options #73179smokeping
nixos/smokeping: port test to python #73057snapper
Port tests to Python #72887solr
nixosTests.solr: Port to python #80063sonarr
Port NixOS tests to python #75701strongswan-swanctl
Port tests to Python #72887sudo
nixosTests.sudo: port to python #74076switch-test
Port NixOS tests to python #75701syncthing-init
nixosTests.syncthing*: port to python #74114syncthing-relay
nixosTests.syncthing*: port to python #74114systemd-networkd-wireguard
tests/systemd-networkd-wireguard: migrate to python test runner #73699systemd-nspawn
nixosTests.systemd-nspawn: convert test to python #73990systemd-timesyncd
Port NixOS tests to python #75701systemd
nixosTests.systemd: port to Python #78241telegraf
Port tests to Python #72887tiddlywiki
nixos/tests/tiddlywiki: port to python #74866timezone
nixos/tests/timezone: port to python #74858tinydns
nixos/tinydns: port test to python #73059tor
trac
Port tests to Python #72857transmission
trezord
Port tests to Python #72857trickster
Port tests to Python #72887udisks2
Port gnome3 like tests to python and udisks2 #72860upnp
Port tests to Python #72887uwsgi
nixosTests.uwsgi: port to python #74061vault
wireguard/default
wireguard/generated
wireguard/namespaces
Port NixOs tests to python #75695wordpress
nixosTests.wordpress: port to python #73993xautolock
Port tests to Python #72887xdg-desktop-portal
xfce4-14
Port xfce test to python #73138xfce
Port xfce test to python #73138xmonad
nixosTests.xmonad: port to python #73137xmpp/ejabberd
nixos/ejabberd: Port test to python #74254xmpp/prosody-mysql
nixosTests.prosody*: port to python #74031xmpp/prosody
nixosTests.prosody*: port to python #74031xrdp
nixos/tests/xrdp: port to python #74854xss-lock
yabar
Port tests to Python #72887yggdrasil
nixosTests.yggdrasil: port to python #73411zfs
nixosTests.installer: Port installer and ZFS test to python #78670zookeeper
Port tests to Python #72887beegfs
(broken & removed, see beegfs is broken #73998)hocker-fetchdocker/default
haskellPackages.hocker marked as broken #95517, PR: nixosTests.hocker-fetchdocker #96076ipfs
(broken, see ipfs tests are broken #74000)mathics
nixosTests.mathics is broken #80055, PR: mathics: remove package, module and test #95505mesos
Mesos is broken #78557, PR: mesos: remove package, module and test (and chronos/marathon which depends on it) #95507Additional work that would be awesome:
The text was updated successfully, but these errors were encountered: