Path to place the configuration on the remote host
Type: string
Default: "/var/src/lollypops"
Method for copying flake to the remote. Using the default
(copy
) will only deploy the flake itself, while
archive
deploys the flake and all it’s inputs to the remote
machine. This is slower when deploying from a connection with slow
upload speed, but allows using inputs which are not accessible from the
remote.
When using copy
all inputs of the flake will be
substituted or pulled from configured caches.
Type: one of “copy”, “archive”
Default: "copy"
Group name for the host, used to perform actions against a group of servers
Type: string
Default: "default"
Evaluate locally instead of on the remote when rebuilding
Type: boolean
Default: false
Command to run for connection to another server
Type: string
Default: "ssh"
Host to deploy to
Type: string
Default: "hostname"
Options to pass to the configured SSH command
Type: list of string
Default:
[
""
]
Example:
[
"-A"
]
User to deploy as
Type: string
Default: "root"
Enables the use of sudo for deployment on remote servers
Type: boolean
Default: false
Command to run for permission elevation
Type: string
Default: "sudo"
Options to pass to the configured sudo command
Type: list of string
Default:
[
""
]
Example:
[
"--user=user"
]
Extra tasks to run for the host. If any are defined with the same name as the default tasks (<literal>deploy-secrets</literal>, <literal>rebuild</literal>, <literal>deploy-flake</literal>) the original tasks will be overriden.
Type: attribute set of (submodule)
Default: { }
Commands for the task.
Type: list of string
Dependencies for the task.
Type: list of string
Default: [ ]
Description for the task.
Type: string
Directory in which the task should run.
Type: path or string
Default: "."
Prefix to prepend to all name when passing to the cmd
Type: string
Default: ""
Default command to retrieve passwords. Will be passed the name as parameter
Type: string
Default: "\${pkgs.pass}/bin/pass"
Path to place the secrets on the remote host if no alternative is specified
Type: string
Default: "/var/src/lollypops-secrets"
Attribute set specifying secrets to be deployed
Type: attribute set of (submodule)
Default: { }
Command to print the secret. E.g. cat mysecretfile
Type: string
Default:
"<default-cmd> <cmd-name-prefix><name>"
Group of the secret file
Type: string
Default: "root"
Unix permission
Type: string
Default: "0400"
Name of the secret
Type: string
Default: "<name>"
Owner of the secret file
Type: string
Default: "root"
Path to place the secret file
Type: string
Default: "<default-dir>/<name>"
The list of tasks to run for each host.
Type: list of string
Default:
[
"deploy-flake"
"deploy-secrets"
"rebuild"
]