Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Sequence diagram] Create participant in box #5023

Open
tsnobip opened this issue Nov 8, 2023 · 1 comment
Open

[Sequence diagram] Create participant in box #5023

tsnobip opened this issue Nov 8, 2023 · 1 comment
Labels
Status: Triage Needs to be verified, categorized, etc Type: Enhancement New feature or request

Comments

@tsnobip
Copy link

tsnobip commented Nov 8, 2023

Proposal

In sequence diagrams, it's now possible to add participants to boxes, but not when they're created later in the sequence diagram.

It'd be convenient to have a syntax to create a participant and place it in a box with the following syntax:

create participant $PARTICIPANT_NAME [as $ALIAS] in $BOX_NAME

Example

sequeneceDiagram
  box Agency
  participant PM as Project manager
  end
  create participant GD as Graphic Designer in Agency
  PM->>GD: hires in the agency

Screenshots

No response

@tsnobip tsnobip added Status: Triage Needs to be verified, categorized, etc Type: Enhancement New feature or request labels Nov 8, 2023
@jgreywolf jgreywolf added include and removed include labels Nov 16, 2023
@pohly
Copy link

pohly commented May 3, 2024

Also relevant here is the ordering. At the moment, the following creates the new "proxy" participant to the very far right:

sequenceDiagram
    participant apiserver
    box kubelet
      participant plugins as plugin manager
      participant manager as DRA manager
    end
    box DRA driver plugin
       participant grpc as gRPC servers
    end
    Note right of grpc: handles registration socket and plugin socket
    plugins -->> grpc: pluginregistration.Registration/GetInfo
    grpc -->> plugins: GetInfo response: PluginInfo{Type:DRAPlugin}
    plugins -->> grpc: pluginregistration.Registration/NotifyRegistrationStatus
    grpc -->> plugins: 
    plugins ->> manager: add plugin
    loop while plugin is registered
       manager -->> grpc: v1alpha1.REST/NodeObject{Name, UID}
       grpc -->> manager: 
       create participant proxy as REST proxy
       manager ->> proxy: start
       proxy -->> grpc: v1alpha1.REST/Proxy
       destroy proxy
    end

I want it in the "kubelet" box before "grpc".

I am working around this by pretending that "proxy" exists from the beginning and merely gets activated, which is not quite right.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Triage Needs to be verified, categorized, etc Type: Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants