Skip to content

Commit

Permalink
Merge pull request galaxyproject#18524 from jmchilton/structured_tool…
Browse files Browse the repository at this point in the history
…_state_models

Add Tool-Centric APIs to the Tool Shed 2.0
  • Loading branch information
mvdbeek authored Jul 15, 2024
2 parents e6bb795 + fc57099 commit f742784
Show file tree
Hide file tree
Showing 96 changed files with 6,287 additions and 151 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,7 @@ doc/build
doc/schema.md
doc/source/admin/config_logging_default_yaml.rst
doc/source/dev/schema.md
doc/source/dev/plantuml.jar
client/docs/dist

# Webpack stats
Expand Down
11 changes: 11 additions & 0 deletions doc/source/dev/image.Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
MINDMAPS := $(wildcard *.mindmap.yml)
INPUTS := $(wildcard *.plantuml.txt)
OUTPUTS := $(INPUTS:.txt=.svg)

all: plantuml.jar $(MINDMAPS) $(OUTPUTS)

$(OUTPUTS): $(INPUTS) $(MINDMAPS)
java -jar plantuml.jar -c plantuml_options.txt -tsvg $(INPUTS)

plantuml.jar:
wget http://jaist.dl.sourceforge.net/project/plantuml/plantuml.jar || curl --output plantuml.jar http://jaist.dl.sourceforge.net/project/plantuml/plantuml.jar
51 changes: 51 additions & 0 deletions doc/source/dev/plantuml_options.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
' skinparam handwritten true
' skinparam roundcorner 20

skinparam class {
ArrowFontColor DarkOrange
BackgroundColor #FFEFD5
ArrowColor Orange
BorderColor DarkOrange
}

skinparam object {
ArrowFontColor DarkOrange
BackgroundColor #FFEFD5
BackgroundColor #FFEFD5
ArrowColor Orange
BorderColor DarkOrange
}

skinparam ComponentBackgroundColor #FFEFD5
skinparam ComponentBorderColor DarkOrange

skinparam DatabaseBackgroundColor #FFEFD5
skinparam DatabaseBorderColor DarkOrange

skinparam StorageBackgroundColor #FFEFD5
skinparam StorageBorderColor DarkOrange

skinparam QueueBackgroundColor #FFEFD5
skinparam QueueBorderColor DarkOrange

skinparam note {
BackgroundColor #FFEFD5
BorderColor #BF5700
}

skinparam sequence {
ArrowColor Orange
ArrowFontColor DarkOrange
ActorBorderColor DarkOrange
ActorBackgroundColor #FFEFD5

ParticipantBorderColor DarkOrange
ParticipantBackgroundColor #FFEFD5

LifeLineBorderColor DarkOrange
LifeLineBackgroundColor #FFEFD5

DividerBorderColor DarkOrange
GroupBorderColor DarkOrange
}

9 changes: 9 additions & 0 deletions doc/source/dev/plantuml_style.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<style>
mindmapDiagram {
node {
BackgroundColor #FFEFD5
BorderColor DarkOrange
LineColor Orange
}
}
</style>
46 changes: 46 additions & 0 deletions doc/source/dev/tool_state_api.plantuml.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 17 additions & 0 deletions doc/source/dev/tool_state_api.plantuml.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
@startuml
'!include plantuml_options.txt
participant "API Request" as apireq
boundary "Jobs API" as api
participant "Job Service" as service
database Database as database
queue TaskQueue as queue
apireq -> api : HTTP JSON
api -> service : To boundary
service -> service : Build RequestToolState
service -> service : Validate RequestToolState (pydantic)
service -> service : decode() RequestToolState \ninto RequestInternalToolState
service -> database : Serialize RequestInternalToolState
service -> queue : Queue QueueJobs with reference to\npersisted RequestInternalToolState
service -> api : JobCreateResponse\n (pydantic model)
api -> apireq : JobCreateResponse\n (as json)
@enduml
Loading

0 comments on commit f742784

Please sign in to comment.