the-moby-effect
Version:
Moby/Docker API client built using effect-ts
174 lines • 7.61 kB
TypeScript
import * as Schema from "effect/Schema";
import * as MobySchemas from "../schemas/index.js";
import * as SwarmSpec from "./SwarmSpec.generated.js";
declare const SwarmInitRequest_base: Schema.Class<SwarmInitRequest, {
/**
* Listen address used for inter-manager communication, as well as
* determining the networking interface used for the VXLAN Tunnel
* Endpoint (VTEP). This can either be an address/port combination in
* the form 192.168.1.1:4567, or an interface followed by a port number,
* like eth0:4567. If the port number is omitted, the default swarm
* listening port is used.
*/
ListenAddr: Schema.Union<[Schema.TemplateLiteral<`${string}:${number}`>, MobySchemas.AddressSchemas.$AddressString, typeof Schema.String]>;
/**
* Externally reachable address advertised to other nodes. This can
* either be an address/port combination in the form 192.168.1.1:4567,
* or an interface followed by a port number, like eth0:4567. If the
* port number is omitted, the port number from the listen address is
* used. If AdvertiseAddr is not specified, it will be automatically
* detected when possible.
*/
AdvertiseAddr: Schema.optionalWith<Schema.Union<[Schema.TemplateLiteral<`${string}:${number}`>, MobySchemas.AddressSchemas.$AddressString, typeof Schema.String]>, {
nullable: true;
}>;
/**
* Address or interface to use for data path traffic (format:
* <ip|interface>), for example, 192.168.1.1, or an interface, like
* eth0. If DataPathAddr is unspecified, the same address as
* AdvertiseAddr is used.
*
* The DataPathAddr specifies the address that global scope network
* drivers will publish towards other nodes in order to reach the
* containers running on this node. Using this parameter it is possible
* to separate the container data traffic from the management traffic of
* the cluster.
*/
DataPathAddr: Schema.optionalWith<Schema.Union<[MobySchemas.AddressSchemas.$AddressString, typeof Schema.String]>, {
nullable: true;
}>;
/**
* DataPathPort specifies the data path port number for data traffic.
* Acceptable port range is 1024 to 49151. if no port is set or is set
* to 0, default port 4789 will be used.
*/
DataPathPort: Schema.optionalWith<MobySchemas.PortSchemas.$Port, {
nullable: true;
}>;
/** Force creation of a new swarm. */
ForceNewCluster: Schema.optionalWith<typeof Schema.Boolean, {
nullable: true;
}>;
/** User modifiable swarm configuration. */
Spec: Schema.optionalWith<typeof SwarmSpec.SwarmSpec, {
nullable: true;
}>;
/**
* Default Address Pool specifies default subnet pools for global scope
* networks.
*/
DefaultAddrPool: Schema.optionalWith<Schema.Array$<MobySchemas.CidrBlockSchemas.$CidrBlockFromString>, {
nullable: true;
}>;
/**
* SubnetSize specifies the subnet size of the networks created from the
* default subnet pool.
*/
SubnetSize: Schema.optionalWith<MobySchemas.UInt32Schemas.$UInt32, {
default: () => MobySchemas.UInt32Schemas.UInt32Brand;
nullable: true;
}>;
AutoLockManagers: Schema.optionalWith<typeof Schema.Boolean, {
nullable: true;
}>;
Availability: Schema.optionalWith<Schema.Literal<["active", "pause", "drain"]>, {
nullable: true;
}>;
}, Schema.Struct.Encoded<{
/**
* Listen address used for inter-manager communication, as well as
* determining the networking interface used for the VXLAN Tunnel
* Endpoint (VTEP). This can either be an address/port combination in
* the form 192.168.1.1:4567, or an interface followed by a port number,
* like eth0:4567. If the port number is omitted, the default swarm
* listening port is used.
*/
ListenAddr: Schema.Union<[Schema.TemplateLiteral<`${string}:${number}`>, MobySchemas.AddressSchemas.$AddressString, typeof Schema.String]>;
/**
* Externally reachable address advertised to other nodes. This can
* either be an address/port combination in the form 192.168.1.1:4567,
* or an interface followed by a port number, like eth0:4567. If the
* port number is omitted, the port number from the listen address is
* used. If AdvertiseAddr is not specified, it will be automatically
* detected when possible.
*/
AdvertiseAddr: Schema.optionalWith<Schema.Union<[Schema.TemplateLiteral<`${string}:${number}`>, MobySchemas.AddressSchemas.$AddressString, typeof Schema.String]>, {
nullable: true;
}>;
/**
* Address or interface to use for data path traffic (format:
* <ip|interface>), for example, 192.168.1.1, or an interface, like
* eth0. If DataPathAddr is unspecified, the same address as
* AdvertiseAddr is used.
*
* The DataPathAddr specifies the address that global scope network
* drivers will publish towards other nodes in order to reach the
* containers running on this node. Using this parameter it is possible
* to separate the container data traffic from the management traffic of
* the cluster.
*/
DataPathAddr: Schema.optionalWith<Schema.Union<[MobySchemas.AddressSchemas.$AddressString, typeof Schema.String]>, {
nullable: true;
}>;
/**
* DataPathPort specifies the data path port number for data traffic.
* Acceptable port range is 1024 to 49151. if no port is set or is set
* to 0, default port 4789 will be used.
*/
DataPathPort: Schema.optionalWith<MobySchemas.PortSchemas.$Port, {
nullable: true;
}>;
/** Force creation of a new swarm. */
ForceNewCluster: Schema.optionalWith<typeof Schema.Boolean, {
nullable: true;
}>;
/** User modifiable swarm configuration. */
Spec: Schema.optionalWith<typeof SwarmSpec.SwarmSpec, {
nullable: true;
}>;
/**
* Default Address Pool specifies default subnet pools for global scope
* networks.
*/
DefaultAddrPool: Schema.optionalWith<Schema.Array$<MobySchemas.CidrBlockSchemas.$CidrBlockFromString>, {
nullable: true;
}>;
/**
* SubnetSize specifies the subnet size of the networks created from the
* default subnet pool.
*/
SubnetSize: Schema.optionalWith<MobySchemas.UInt32Schemas.$UInt32, {
default: () => MobySchemas.UInt32Schemas.UInt32Brand;
nullable: true;
}>;
AutoLockManagers: Schema.optionalWith<typeof Schema.Boolean, {
nullable: true;
}>;
Availability: Schema.optionalWith<Schema.Literal<["active", "pause", "drain"]>, {
nullable: true;
}>;
}>, never, {
readonly Availability?: "active" | "pause" | "drain" | undefined;
} & {
readonly Spec?: SwarmSpec.SwarmSpec | undefined;
} & {
readonly AutoLockManagers?: boolean | undefined;
} & {
readonly SubnetSize?: MobySchemas.UInt32Schemas.UInt32Brand;
} & {
readonly DataPathPort?: MobySchemas.PortSchemas.PortBrand | undefined;
} & {
readonly DefaultAddrPool?: readonly (MobySchemas.CidrBlockSchemas.CidrBlockBase<"ipv4"> | MobySchemas.CidrBlockSchemas.CidrBlockBase<"ipv6">)[] | undefined;
} & {
readonly ListenAddr: string;
} & {
readonly AdvertiseAddr?: string | undefined;
} & {
readonly DataPathAddr?: string | undefined;
} & {
readonly ForceNewCluster?: boolean | undefined;
}, {}, {}>;
export declare class SwarmInitRequest extends SwarmInitRequest_base {
}
export {};
//# sourceMappingURL=SwarmInitRequest.generated.d.ts.map