provs/doc/CliApplication.md
2022-02-03 13:00:01 +01:00

1.3 KiB

@startuml

autonumber

skinparam sequenceBox {
     borderColor White
}

participant User

box "application" #LightBlue

participant CliWorkplace
participant CliWorkplaceParser
participant CliWorkplaceCommand
participant Application

end box

box  #White

participant CliUtils
participant "Prov (local or remote...)" as ProvInstance

end box

box "domain" #LightGreen

participant ProvisionWorkplace

end box

box "infrastructure" #CornSilk

participant ConfigRepository
participant "Infrastructure functions" as Infrastructure_functions

end box


User -> CliWorkplace ++ : main(args...)

CliWorkplace -> CliWorkplaceParser : parseWorkplaceArguments

CliWorkplace -> CliWorkplaceCommand : isValid ?

CliWorkplace -> ConfigRepository : getConfig

CliWorkplace -> CliUtils : createProvInstance
ProvInstance <- CliUtils : create

CliWorkplace -> Application : provision ( config )
Application -> ProvInstance : provisionWorkplace ( type, ssh, ...)
ProvInstance -> ProvisionWorkplace : provisionWorkplace

ProvisionWorkplace -> Infrastructure_functions: Various calls like:
ProvisionWorkplace -> Infrastructure_functions: install ssh, gpg, git ...
ProvisionWorkplace -> Infrastructure_functions: installVirtualBoxGuestAdditions
ProvisionWorkplace -> Infrastructure_functions: configureNoSwappiness, ...

@enduml