mirror of
https://github.com/NixOS/nix.git
synced 2025-11-15 06:52:43 +01:00
Ensure we can construct remote store configs in isolation
Progress towards #10766 I thought that #10768 achieved, but when I went to use this stuff (in Hydra), turns out it did not. (Those `using FooConfig;` lines were not working --- they are so finicky!) This PR gets the job done, and adds some trivial unit tests to make sure I did what I intended. I had to add add a header to expose `SSHStoreConfig`, after which the preexisting `ssh-store-config.*` were very confusingly named files, so I renamed them to `common-ssh-store-config.hh` to match the type defined therein.
This commit is contained in:
parent
846869da0e
commit
808082ea03
11 changed files with 120 additions and 26 deletions
28
src/libstore/ssh-store.hh
Normal file
28
src/libstore/ssh-store.hh
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
#pragma once
|
||||
///@file
|
||||
|
||||
#include "common-ssh-store-config.hh"
|
||||
#include "store-api.hh"
|
||||
#include "remote-store.hh"
|
||||
|
||||
namespace nix {
|
||||
|
||||
struct SSHStoreConfig : virtual RemoteStoreConfig, virtual CommonSSHStoreConfig
|
||||
{
|
||||
using CommonSSHStoreConfig::CommonSSHStoreConfig;
|
||||
using RemoteStoreConfig::RemoteStoreConfig;
|
||||
|
||||
SSHStoreConfig(std::string_view scheme, std::string_view authority, const Params & params);
|
||||
|
||||
const Setting<Strings> remoteProgram{
|
||||
this, {"nix-daemon"}, "remote-program", "Path to the `nix-daemon` executable on the remote machine."};
|
||||
|
||||
const std::string name() override
|
||||
{
|
||||
return "Experimental SSH Store";
|
||||
}
|
||||
|
||||
std::string doc() override;
|
||||
};
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue