Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions temporal/api/worker/v1/message.proto
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,10 @@ message WorkerHeartbeat {

// Storage drivers in use by this SDK.
repeated StorageDriverInfo drivers = 24;

// Runtime environments in use by this SDK. Often will only be one of these, but it's allowed to
// be repeated for scenarios like "Python inside a Lambda".
repeated RuntimeInfo runtimes = 25;
}

// Detailed worker information.
Expand Down Expand Up @@ -194,6 +198,25 @@ message StorageDriverInfo {
string type = 1;
}

message RuntimeInfo {
enum RuntimeType {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing DOTNET

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would also like to differentiate between .NET types e.g. Framework, Core, NativeAOT, etc and Unknown. So I think there should be a secondary field for this. It would be good to keep that it is .NET separate from the type of .NET in case we can't accurately identify it so we can still filter based on .NET and know we have a known gap.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, I see we have an sdk_name field above. So maybe add DOTNET_FRAMEWORK and DOTNET_CORE.

RUNTIME_TYPE_UNSPECIFIED = 0;
RUNTIME_TYPE_JVM = 1;
RUNTIME_TYPE_PYTHON = 2;
RUNTIME_TYPE_NODE = 3;
RUNTIME_TYPE_BUN = 4;
RUNTIME_TYPE_RUBY = 5;
RUNTIME_TYPE_GO = 6;
RUNTIME_TYPE_DOCKER = 7;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there more than one type possible? Like python in docker?

RUNTIME_TYPE_LAMBDA = 8;
RUNTIME_TYPE_GCR = 9;
}
// The type of the runtime.
RuntimeType type = 1;
// The version of the runtime.
string version = 2;
}

// A command sent from the server to a worker.
message WorkerCommand {
oneof type {
Expand Down
Loading