home-manager/tests/modules/services/git-sync/basic.nix

44 lines
1.2 KiB
Nix
Raw Normal View History

2022-09-05 11:51:03 +00:00
{ config, ... }:
2021-07-15 01:20:28 +00:00
{
2022-09-05 11:51:03 +00:00
services.git-sync = {
enable = true;
package = config.lib.test.mkStubPackage { outPath = "@git-sync@"; };
repositories.test = {
path = "/a/path";
uri = "git+ssh://user@example.com:/~user/path/to/repo.git";
2021-07-15 01:20:28 +00:00
};
2022-09-05 11:51:03 +00:00
};
2021-07-15 01:20:28 +00:00
2022-09-05 11:51:03 +00:00
test.stubs = {
git = { name = "git"; };
openssh = { name = "openssh"; };
};
2022-09-05 11:51:03 +00:00
nmt.script = ''
serviceFile=home-files/.config/systemd/user/git-sync-test.service
2021-07-15 01:20:28 +00:00
2022-09-05 11:51:03 +00:00
assertFileExists $serviceFile
2022-09-05 11:51:03 +00:00
serviceFile=$(normalizeStorePaths $serviceFile)
assertFileContent $serviceFile ${
builtins.toFile "expected" ''
[Install]
WantedBy=default.target
2021-07-15 01:20:28 +00:00
2022-09-05 11:51:03 +00:00
[Service]
Environment=PATH=/nix/store/00000000000000000000000000000000-openssh/bin:/nix/store/00000000000000000000000000000000-git/bin
Environment=GIT_SYNC_DIRECTORY=/a/path
Environment=GIT_SYNC_COMMAND=@git-sync@/bin/git-sync
Environment=GIT_SYNC_REPOSITORY=git+ssh://user@example.com:/~user/path/to/repo.git
Environment=GIT_SYNC_INTERVAL=500
ExecStart=@git-sync@/bin/git-sync-on-inotify
Restart=on-abort
2021-07-15 01:20:28 +00:00
2022-09-05 11:51:03 +00:00
[Unit]
Description=Git Sync test
''
}
'';
2021-07-15 01:20:28 +00:00
}