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
94 changes: 94 additions & 0 deletions temporal/api/worker/v1/message.proto
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,9 @@ message WorkerHeartbeat {

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

// Information about the environment this SDK is running in.
EnvironmentInfo environment = 25;
}

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

message EnvironmentInfo {
message Runtime {
enum RuntimeType {
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_DOTNET_FRAMEWORK = 7;
RUNTIME_TYPE_DOTNET_CORE = 8;
}
// The type of the runtime.
RuntimeType type = 1;
// The version of the runtime, if obtainable.
string version = 2;
}

message HostingEnvironment {
enum HostingEnvironmentType {
HOSTING_ENVIRONMENT_TYPE_UNSPECIFIED = 0;
HOSTING_ENVIRONMENT_TYPE_DOCKER = 1;
HOSTING_ENVIRONMENT_TYPE_AWS_LAMBDA = 2;
HOSTING_ENVIRONMENT_TYPE_GOOGLE_CLOUD_RUN = 3;
}
// The type of hosting environment.
HostingEnvironmentType type = 1;
// The version of the hosting environment, if obtainable.
string version = 2;
}

enum Architecture {
ARCHITECTURE_UNSPECIFIED = 0;
ARCHITECTURE_AMD64 = 1;
ARCHITECTURE_ARM64 = 2;
}

message Platform {
oneof variant {
LinuxPlatform linux = 1;
MacOSPlatform macos = 2;
WindowsPlatform windows = 3;
}
}

message LinuxPlatform {
enum Libc {
LIBC_UNSPECIFIED = 0;
LIBC_GLIBC = 1;
LIBC_MUSL = 2;
}
// The Linux kernel or distribution version, if obtainable.
string version = 1;
// The architecture of the worker process.
Architecture architecture = 2;
// The libc used by the worker process.
Libc libc = 3;
}

message MacOSPlatform {
// The macOS version, if obtainable.
string version = 1;
// The architecture of the worker process.
Architecture architecture = 2;
}

message WindowsPlatform {
enum Crt {
CRT_UNSPECIFIED = 0;
CRT_UCRT = 1;
CRT_MSVCRT = 2;
CRT_MINGW = 3;
CRT_CYGWIN = 4;
}
// The Windows version, if obtainable.
string version = 1;
// The architecture of the worker process.
Architecture architecture = 2;
// The C runtime used by the worker process, if obtainable.
Crt crt = 3;
}

// The runtime(s) the SDK is operating in.
repeated Runtime runtimes = 1;
// The hosting environment(s) the SDK is operating in.
repeated HostingEnvironment hosting_environments = 2;
// The platform the SDK is operating on.
Platform platform = 3;
}

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