mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-01 15:11:25 +00:00
* A bunch of options for the new nixos-deploy-network. Completely
unimplemented of course. svn path=/nixos/trunk/; revision=27048
This commit is contained in:
parent
deb6cce4bb
commit
311b702c70
@ -4,12 +4,92 @@ with pkgs.lib;
|
||||
|
||||
{
|
||||
options = {
|
||||
|
||||
deployment.targetEnv = mkOption {
|
||||
default = "none";
|
||||
example = "ec2";
|
||||
description = ''
|
||||
This option specifies the type of the environment in which the
|
||||
machine is to be deployed by
|
||||
<command>nixos-deploy-network</command>. Currently, it can
|
||||
have the following values. <literal>"none"</literal> means
|
||||
deploying to a pre-existing physical or virtual NixOS machine,
|
||||
reachable via SSH under the hostname or IP address specified
|
||||
in <option>deployment.targetHost</option>.
|
||||
<literal>"ec2"</literal> means that a virtual machine should be
|
||||
instantiated in an Amazon EC2-compatible cloud environment
|
||||
(see <option>deployment.ec2.*</option>).
|
||||
<literal>"adhoc-cloud"</literal> means that a virtual machine
|
||||
should be instantiated by executing certain commands via SSH
|
||||
on a cloud controller machine (see
|
||||
<option>deployment.adhoc.*</option>). This is primarily
|
||||
useful for debugging <command>nixos-deploy-network</command>.
|
||||
'';
|
||||
};
|
||||
|
||||
deployment.targetHost = mkOption {
|
||||
default = config.networking.hostName;
|
||||
description = ''
|
||||
This option specifies a hostname or IP address which can be used by nixos-deploy-network
|
||||
to execute remote deployment operations.
|
||||
This option specifies a hostname or IP address which can be
|
||||
used by <command>nixos-deploy-network</command> to execute
|
||||
remote deployment operations.
|
||||
'';
|
||||
};
|
||||
|
||||
# EC2/Nova/Eucalyptus-specific options.
|
||||
|
||||
deployment.ec2.url = mkOption {
|
||||
example = "https://ec2.eu-west-1.amazonaws.com:443/";
|
||||
description = ''
|
||||
URL of an Amazon EC2-compatible web service, used to create virtual machines.
|
||||
'';
|
||||
};
|
||||
|
||||
deployment.ec2.ami = mkOption {
|
||||
example = "ami-ecb49e98";
|
||||
description = ''
|
||||
EC2 identifier of the AMI disk image used in the virtual
|
||||
machine. This must be a NixOS image providing SSH access.
|
||||
'';
|
||||
};
|
||||
|
||||
deployment.ec2.instanceType = mkOption {
|
||||
default = "m1.small";
|
||||
example = "m1.large";
|
||||
description = ''
|
||||
EC2 instance type. See <link
|
||||
xlink:href='http://aws.amazon.com/ec2/instance-types/'/> for a
|
||||
list of valid Amazon EC2 instance types.
|
||||
'';
|
||||
};
|
||||
|
||||
# Ad hoc cloud options.
|
||||
|
||||
deployment.adhoc.controller = mkOption {
|
||||
example = "https://ec2.eu-west-1.amazonaws.com:443/";
|
||||
description = ''
|
||||
Hostname or IP addres of the machine to which
|
||||
<command>nixos-deploy-network</command> should connect (via
|
||||
SSH) to execute commands to start VMs or query their status.
|
||||
'';
|
||||
};
|
||||
|
||||
deployment.adhoc.startVMCommand = mkOption {
|
||||
default = "create-vm";
|
||||
description = ''
|
||||
Remote command to create a NixOS virtual machine. It should
|
||||
print an identifier denoting the VM on standard output.
|
||||
'';
|
||||
};
|
||||
|
||||
deployment.adhoc.queryVMCommand = mkOption {
|
||||
default = "query-vm";
|
||||
description = ''
|
||||
Remote command to query information about a previously created
|
||||
NixOS virtual machine. It should print the IPv6 address of
|
||||
the VM on standard output.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user