...

Text file src/github.com/Microsoft/hcsshim/cmd/containerd-shim-runhcs-v1/options/runhcs.proto

Documentation: github.com/Microsoft/hcsshim/cmd/containerd-shim-runhcs-v1/options

     1syntax = "proto3";
     2
     3package containerd.runhcs.v1;
     4
     5import weak "gogoproto/gogo.proto";
     6import "google/protobuf/timestamp.proto";
     7
     8option go_package = "github.com/Microsoft/hcsshim/cmd/containerd-shim-runhcs-v1/options;options";
     9
    10// Options are the set of customizations that can be passed at Create time.
    11message Options {
    12	// Enable debug tracing (sets the logrus log level to debug). This may be deprecated in the future, prefer
    13	// log_level as this will override debug if both of them are set.
    14	bool debug = 1;
    15
    16	enum DebugType {
    17		NPIPE = 0;
    18		FILE = 1;
    19		ETW = 2;
    20	}
    21
    22	// debug tracing output type
    23	DebugType debug_type = 2;
    24
    25	// registry key root for storage of the runhcs container state
    26	string registry_root = 3;
    27
    28	// sandbox_image is the image to use for the sandbox that matches the
    29	// sandbox_platform.
    30	string sandbox_image = 4;
    31
    32	// sandbox_platform is a CRI setting that specifies the platform
    33	// architecture for all sandbox's in this runtime. Values are
    34	// 'windows/amd64' and 'linux/amd64'.
    35	string sandbox_platform = 5;
    36
    37	enum SandboxIsolation {
    38		PROCESS = 0;
    39		HYPERVISOR = 1;
    40	}
    41
    42	// sandbox_isolation is a CRI setting that specifies the isolation level of
    43	// the sandbox. For Windows runtime PROCESS and HYPERVISOR are valid. For
    44	// LCOW only HYPERVISOR is valid and default if omitted.
    45	SandboxIsolation sandbox_isolation = 6;
    46
    47	// boot_files_root_path is the path to the directory containing the LCOW
    48	// kernel and root FS files.
    49	string boot_files_root_path = 7;
    50
    51	// vm_processor_count is the default number of processors to create for the
    52	// hypervisor isolated utility vm.
    53	//
    54	// The platform default if omitted is 2, unless the host only has a single
    55	// core in which case it is 1.
    56	int32 vm_processor_count = 8;
    57
    58	// vm_memory_size_in_mb is the default amount of memory to assign to the
    59	// hypervisor isolated utility vm.
    60	//
    61	// The platform default is 1024MB if omitted.
    62	int32 vm_memory_size_in_mb = 9;
    63
    64	// GPUVHDPath is the path to the gpu vhd to add to the uvm
    65	// when a container requests a gpu
    66	string GPUVHDPath = 10;
    67
    68	// scale_cpu_limits_to_sandbox indicates that container CPU limits should
    69	// be adjusted to account for the difference in number of cores between the
    70	// host and UVM.
    71	bool scale_cpu_limits_to_sandbox = 11;
    72
    73	// default_container_scratch_size_in_gb is the default scratch size (sandbox.vhdx)
    74	// to be used for containers. Every container will get a sandbox of `size_in_gb` assigned
    75	// instead of the default of 20GB.
    76	int32 default_container_scratch_size_in_gb = 12;
    77
    78	// default_vm_scratch_size_in_gb is the default scratch size (sandbox.vhdx)
    79	// to be used for the UVM. This only applies to WCOW as LCOW doesn't mount a scratch
    80	// specifically for the UVM.
    81	int32 default_vm_scratch_size_in_gb = 13;
    82
    83	// share_scratch specifies if we'd like to reuse scratch space between multiple containers.
    84	// This currently only affects LCOW. The sandbox containers scratch space is re-used for all
    85	// subsequent containers launched in the pod.
    86	bool share_scratch = 14;
    87
    88	// NCProxyAddr is the address of the network configuration proxy service. If omitted
    89	// the network is setup locally.
    90	string NCProxyAddr = 15;
    91
    92	// log_level specifies the logrus log level for the shim. Supported values are a string representation of the
    93	// logrus log levels: "trace", "debug", "info", "warn", "error", "fatal", "panic". This setting will override
    94	// the `debug` field if both are specified, unless the level specified is also "debug", as these are equivalent.
    95	string log_level = 16;
    96
    97	// io_retry_timeout_in_sec is the timeout in seconds for how long to try and reconnect to an upstream IO provider if a connection is lost.
    98	// The typical example is if Containerd has restarted but is expected to come back online. A 0 for this field is interpreted as an infinite
    99	// timeout.
   100	int32 io_retry_timeout_in_sec = 17;
   101
   102	// default_container_annotations specifies a set of annotations that should be set for every workload container
   103	map<string, string> default_container_annotations = 18;
   104
   105	// no_inherit_host_timezone specifies to skip inheriting the hosts time zone for WCOW UVMs and instead default to
   106	// UTC.
   107	bool no_inherit_host_timezone = 19;
   108
   109	// scrub_logs enables removing environment variables and other potentially sensitive information from logs
   110	bool scrub_logs = 20;
   111}
   112
   113// ProcessDetails contains additional information about a process. This is the additional
   114// info returned in the Pids query.
   115message ProcessDetails {
   116	string image_name = 1;
   117	google.protobuf.Timestamp created_at = 2 [(gogoproto.stdtime) = true, (gogoproto.nullable) = false];
   118	uint64 kernel_time_100_ns = 3;
   119	uint64 memory_commit_bytes = 4;
   120	uint64 memory_working_set_private_bytes = 5;
   121	uint64 memory_working_set_shared_bytes = 6;
   122	uint32 process_id = 7;
   123	uint64 user_time_100_ns = 8;
   124	string exec_id = 9;
   125}

View as plain text