examples: add krops deployment method
This commit is contained in:
committed by
Erik Arvstedt
parent
e017675d5e
commit
fe118b28ff
20
examples/krops/deploy.nix
Normal file
20
examples/krops/deploy.nix
Normal file
@@ -0,0 +1,20 @@
|
||||
let
|
||||
# FIXME:
|
||||
target = "root@HOSTNAME_OR_IP_ADDRESS";
|
||||
|
||||
extraSources = {
|
||||
"hardware-configuration.nix".file = toString ../hardware-configuration.nix;
|
||||
};
|
||||
|
||||
krops = (import <nix-bitcoin> {}).krops;
|
||||
in
|
||||
krops.pkgs.krops.writeDeploy "deploy" {
|
||||
inherit target;
|
||||
|
||||
source = import ./sources.nix { inherit extraSources krops; };
|
||||
|
||||
# Avoid having to create a sentinel file.
|
||||
# Otherwise /var/src/.populate must be created on the target node to signal krops
|
||||
# that it is allowed to deploy.
|
||||
force = true;
|
||||
}
|
||||
7
examples/krops/krops-configuration.nix
Normal file
7
examples/krops/krops-configuration.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
# This file allows you to build your krops configuration locally
|
||||
{
|
||||
imports = [
|
||||
../configuration.nix
|
||||
<nix-bitcoin/modules/deployment/krops.nix>
|
||||
];
|
||||
}
|
||||
33
examples/krops/sources.nix
Normal file
33
examples/krops/sources.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ extraSources, krops }:
|
||||
|
||||
krops.lib.evalSource [({
|
||||
nixos-config.file = builtins.toFile "nixos-config" ''
|
||||
{
|
||||
imports = [
|
||||
./configuration.nix
|
||||
<nix-bitcoin/modules/deployment/krops.nix>
|
||||
];
|
||||
}
|
||||
'';
|
||||
|
||||
"configuration.nix".file = toString ../configuration.nix;
|
||||
|
||||
# Enable `useChecksum` for sources which might be located in the nix store
|
||||
# and which therefore might have static timestamps.
|
||||
|
||||
nixpkgs.file = {
|
||||
path = toString <nixpkgs>;
|
||||
useChecksum = true;
|
||||
};
|
||||
|
||||
nix-bitcoin.file = {
|
||||
path = toString <nix-bitcoin>;
|
||||
useChecksum = true;
|
||||
filters = [{
|
||||
type = "exclude";
|
||||
pattern = ".git";
|
||||
}];
|
||||
};
|
||||
|
||||
secrets.file = toString ../secrets;
|
||||
} // extraSources)]
|
||||
Reference in New Issue
Block a user