Add new protobuf messages related to Agent (#2541)

This commit is contained in:
Alexandre de Souza 2024-04-03 10:43:45 -03:00 committed by GitHub
parent 61ca2cd063
commit 954ababc61
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 58 additions and 30 deletions

View file

@ -3,7 +3,6 @@ defmodule Livebook.Teams.Connection do
require Logger
alias Livebook.WebSocket
alias Livebook.Teams.WebSocket
@backoff 5_000

View file

@ -1,39 +1,25 @@
defmodule LivebookProto do
alias LivebookProto.{
AgentConnected,
AppDeploymentCreated,
FileSystemCreated,
FileSystemDeleted,
FileSystemUpdated,
SecretCreated,
SecretDeleted,
SecretUpdated,
DeploymentGroupCreated,
DeploymentGroupDeleted,
DeploymentGroupUpdated,
UserConnected,
UserDeleted
}
@event_mapping (for {_id, field_prop} <- LivebookProto.Event.__message_props__().field_props,
into: %{} do
{field_prop.type, field_prop.name_atom}
end)
@type event_proto ::
AgentConnected.t()
| AppDeploymentCreated.t()
| FileSystemCreated.t()
| FileSystemDeleted.t()
| FileSystemUpdated.t()
| SecretCreated.t()
| SecretDeleted.t()
| SecretUpdated.t()
| DeploymentGroupCreated.t()
| DeploymentGroupDeleted.t()
| DeploymentGroupUpdated.t()
| UserConnected.t()
| UserDeleted.t()
LivebookProto.AgentConnected.t()
| LivebookProto.AgentJoined.t()
| LivebookProto.AgentLeft.t()
| LivebookProto.AppDeploymentCreated.t()
| LivebookProto.FileSystemCreated.t()
| LivebookProto.FileSystemDeleted.t()
| LivebookProto.FileSystemUpdated.t()
| LivebookProto.SecretCreated.t()
| LivebookProto.SecretDeleted.t()
| LivebookProto.SecretUpdated.t()
| LivebookProto.DeploymentGroupCreated.t()
| LivebookProto.DeploymentGroupDeleted.t()
| LivebookProto.DeploymentGroupUpdated.t()
| LivebookProto.UserConnected.t()
| LivebookProto.UserDeleted.t()
@doc """
Builds an event with given data.

View file

@ -0,0 +1,8 @@
defmodule LivebookProto.Agent do
use Protobuf, syntax: :proto3, protoc_gen_elixir_version: "0.12.0"
field :id, 1, type: :string
field :name, 2, type: :string
field :org_id, 3, type: :string, json_name: "orgId"
field :deployment_group_id, 4, type: :string, json_name: "deploymentGroupId"
end

View file

@ -17,4 +17,6 @@ defmodule LivebookProto.AgentConnected do
repeated: true,
type: LivebookProto.AppDeployment,
json_name: "appDeployments"
field :agents, 9, repeated: true, type: LivebookProto.Agent
end

View file

@ -0,0 +1,5 @@
defmodule LivebookProto.AgentJoined do
use Protobuf, syntax: :proto3, protoc_gen_elixir_version: "0.12.0"
field :agent, 1, type: LivebookProto.Agent
end

View file

@ -0,0 +1,5 @@
defmodule LivebookProto.AgentLeft do
use Protobuf, syntax: :proto3, protoc_gen_elixir_version: "0.12.0"
field :agent, 1, type: LivebookProto.Agent
end

View file

@ -64,4 +64,6 @@ defmodule LivebookProto.Event do
oneof: 0
field :user_deleted, 13, type: LivebookProto.UserDeleted, json_name: "userDeleted", oneof: 0
field :agent_joined, 14, type: LivebookProto.AgentJoined, json_name: "agentJoined", oneof: 0
field :agent_left, 15, type: LivebookProto.AgentLeft, json_name: "agentLeft", oneof: 0
end

View file

@ -14,4 +14,6 @@ defmodule LivebookProto.UserConnected do
repeated: true,
type: LivebookProto.AppDeployment,
json_name: "appDeployments"
field :agents, 6, repeated: true, type: LivebookProto.Agent
end

View file

@ -101,6 +101,7 @@ message UserConnected {
repeated FileSystem file_systems = 3;
repeated DeploymentGroup deployment_groups = 4;
repeated AppDeployment app_deployments = 5;
repeated Agent agents = 6;
}
message AgentConnected {
@ -112,6 +113,7 @@ message AgentConnected {
repeated FileSystem file_systems = 6;
repeated DeploymentGroup deployment_groups = 7;
repeated AppDeployment app_deployments = 8;
repeated Agent agents = 9;
}
message AppDeployment {
@ -133,6 +135,21 @@ message UserDeleted {
string id = 1;
}
message AgentJoined {
Agent agent = 1;
}
message AgentLeft {
Agent agent = 1;
}
message Agent {
string id = 1;
string name = 2;
string org_id = 3;
string deployment_group_id = 4;
}
message Event {
oneof type {
SecretCreated secret_created = 1;
@ -148,5 +165,7 @@ message Event {
AgentConnected agent_connected = 11;
AppDeploymentCreated app_deployment_created = 12;
UserDeleted user_deleted = 13;
AgentJoined agent_joined = 14;
AgentLeft agent_left = 15;
}
}