forked from mirrors/nixpkgs
nixosTests.nextcloud: Add davfs2 example to the VM test
Some people use davfs2 to mount a NextCloud instance, so make sure this works as well.
This commit is contained in:
parent
b0b3c30361
commit
75e18ab323
|
@ -9,7 +9,22 @@ in {
|
|||
|
||||
nodes = {
|
||||
# The only thing the client needs to do is download a file.
|
||||
client = { ... }: {};
|
||||
client = { ... }: {
|
||||
services.davfs2.enable = true;
|
||||
system.activationScripts.davfs2-secrets = ''
|
||||
echo "http://nextcloud/remote.php/webdav/ ${adminuser} ${adminpass}" > /tmp/davfs2-secrets
|
||||
chmod 600 /tmp/davfs2-secrets
|
||||
'';
|
||||
fileSystems = pkgs.lib.mkVMOverride {
|
||||
"/mnt/dav" = {
|
||||
device = "http://nextcloud/remote.php/webdav/";
|
||||
fsType = "davfs";
|
||||
options = let
|
||||
davfs2Conf = (pkgs.writeText "davfs2.conf" "secrets /tmp/davfs2-secrets");
|
||||
in [ "conf=${davfs2Conf}" "x-systemd.automount" "noauto"];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nextcloud = { config, pkgs, ... }: {
|
||||
networking.firewall.allowedTCPPorts = [ 80 ];
|
||||
|
@ -60,5 +75,6 @@ in {
|
|||
client.succeed(
|
||||
"${withRcloneEnv} ${diffSharedFile}"
|
||||
)
|
||||
assert "hi" in client.succeed("cat /mnt/dav/test-shared-file")
|
||||
'';
|
||||
})
|
||||
|
|
Loading…
Reference in a new issue