87 lines
1.9 KiB
Plaintext
87 lines
1.9 KiB
Plaintext
@startuml
|
|
namespace main {
|
|
class ArgoBuilder << (S,Aquamarine) >> {
|
|
- graph Graph
|
|
- branches [][]string
|
|
|
|
+ Workflow Workflow
|
|
|
|
- createTemplates()
|
|
- createDAGstep()
|
|
- createVolumes()
|
|
- getDependency(current_computing_id string) []string
|
|
|
|
+ CreateDAG() bool
|
|
|
|
}
|
|
class Container << (S,Aquamarine) >> {
|
|
+ Image string
|
|
+ Command []string
|
|
+ Args []string
|
|
+ VolumeMounts []VolumeMount
|
|
|
|
}
|
|
class Dag << (S,Aquamarine) >> {
|
|
+ Tasks []Task
|
|
|
|
}
|
|
|
|
class Link << (S,Aquamarine) >> {
|
|
+ Src string
|
|
+ Dst string
|
|
|
|
}
|
|
class Parameter << (S,Aquamarine) >> {
|
|
+ Name string
|
|
+ Value string
|
|
|
|
}
|
|
class Spec << (S,Aquamarine) >> {
|
|
+ Entrypoint string
|
|
+ Arguments []Parameter
|
|
+ Volumes []VolumeClaimTemplate
|
|
+ Templates []Template
|
|
|
|
}
|
|
class Task << (S,Aquamarine) >> {
|
|
+ Name string
|
|
+ Template string
|
|
+ Dependencies []string
|
|
+ Arguments <font color=blue>struct</font>{[]Parameter}
|
|
|
|
}
|
|
class Template << (S,Aquamarine) >> {
|
|
+ Name string
|
|
+ Inputs <font color=blue>struct</font>{[]Parameter}
|
|
+ Container Container
|
|
+ Dag Dag
|
|
|
|
}
|
|
class VolumeClaimTemplate << (S,Aquamarine) >> {
|
|
+ Metadata <font color=blue>struct</font>{string}
|
|
+ Spec VolumeSpec
|
|
|
|
}
|
|
class VolumeMount << (S,Aquamarine) >> {
|
|
+ Name string
|
|
+ MountPath string
|
|
|
|
}
|
|
class VolumeSpec << (S,Aquamarine) >> {
|
|
+ AccessModes []string
|
|
+ Resources <font color=blue>struct</font>{<font color=blue>struct</font>{string}}
|
|
|
|
}
|
|
|
|
class Workflow << (S,Aquamarine) >> {
|
|
+ ApiVersion string
|
|
+ Kind string
|
|
+ Metadata <font color=blue>struct</font>{string}
|
|
+ Spec Spec
|
|
|
|
}
|
|
}
|
|
|
|
|
|
@enduml
|