Add UUID and server info to introspection

Closes #1862

This adds a new rpc to the introspection service to provide server
information with a generated UUID that is done on demand and the os and
arch of the server.

ctr output:

```bash
> sudo ctr version

Client:
  Version:  v1.2.0-802-g57821695.m
  Revision: 578216950de9c1c188708369e2a31ac6c494dfee.m

Server:
  Version:  v1.2.0-802-g57821695.m
  Revision: 578216950de9c1c188708369e2a31ac6c494dfee.m
  UUID: 92e982a9-f13e-4a2c-9032-e69b27fed454
  OS: linux
  ARCH: amd64
```

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
This commit is contained in:
Michael Crosby
2019-07-31 15:28:06 +00:00
parent dce8541387
commit 9f0bc2b53f
6 changed files with 364 additions and 35 deletions

View File

@@ -2368,6 +2368,7 @@ file {
package: "containerd.services.introspection.v1"
dependency: "github.com/containerd/containerd/api/types/platform.proto"
dependency: "google/rpc/status.proto"
dependency: "google/protobuf/empty.proto"
dependency: "gogoproto/gogo.proto"
message_type {
name: "Plugin"
@@ -2471,6 +2472,19 @@ file {
json_name: "plugins"
}
}
message_type {
name: "ServerResponse"
field {
name: "uuid"
number: 1
label: LABEL_OPTIONAL
type: TYPE_STRING
options {
65004: "UUID"
}
json_name: "uuid"
}
}
service {
name: "Introspection"
method {
@@ -2478,11 +2492,16 @@ file {
input_type: ".containerd.services.introspection.v1.PluginsRequest"
output_type: ".containerd.services.introspection.v1.PluginsResponse"
}
method {
name: "Server"
input_type: ".google.protobuf.Empty"
output_type: ".containerd.services.introspection.v1.ServerResponse"
}
}
options {
go_package: "github.com/containerd/containerd/api/services/introspection/v1;introspection"
}
weak_dependency: 2
weak_dependency: 3
syntax: "proto3"
}
file {