Adding document type

main
Tom Peltonen 2024-04-30 23:57:33 +10:00
parent 98391cf308
commit da61794fce
13 changed files with 188 additions and 5 deletions

View File

@ -1,6 +1,6 @@
{ {
"name": "sd01", "name": "sd01",
"guide": "https://docs.qaskx.one/templates/sequence/markdown", "guide": "{{.SelfFolder}}/sd01.md",
"description": "Markdown sequence template with embedded mermaid", "description": "Markdown sequence template with embedded mermaid",
"templates": [ "templates": [
{ {

View File

@ -1,6 +1,6 @@
{ {
"name": "sd02", "name": "sd02",
"guide": "https://docs.qaskx.one/templates/sequence/mermaid", "guide": "{{.SelfFolder}}/sd02.md",
"description": "Mermaid sequence template", "description": "Mermaid sequence template",
"templates": [ "templates": [
{ {

View File

@ -12,7 +12,7 @@ steps:
- GOARCH=amd64 - GOARCH=amd64
commands: commands:
- go get - go get
- go build - go build -o {{.ExecutableName}}
# Runs a dryrun to build the docker container # Runs a dryrun to build the docker container
dryrun-docker: dryrun-docker:

View File

@ -8,6 +8,6 @@ steps:
commands: commands:
- go download - go download
- go get - go get
- go build -o {{.AssetName}} .\... - go build -o {{.ExecutableName}} .\...
# Optional: Run go tests # Optional: Run go tests
- go test .\... - go test .\...

View File

@ -1,7 +1,7 @@
## Build Golang Templates ## Build Golang Templates
The template files (*.json) listed here are for various The template files (*.json) listed here are for various
templease created for Golang projects. templeates created for Golang projects.
The templates are basic in construct and capability. The templates are basic in construct and capability.

View File

@ -0,0 +1,52 @@
# Sequence diagram
This represents the sequence diagram for
service names {{ range .ServiceNames}}**{{.}}** {{ end }}
```mermaid
sequenceDiagram
participant consumer as Consumer
participant gateway as Gateway
participant microservice as ServiceName
participant feature as Svc Feature
participant authz as Authorisation
participant log as Logger
{{ range .Apis}}participant {{ .Name }} as Svc{{ .Name }}
{{ end }}
consumer->>+gateway: {{.ServicePoints}}
activate consumer
note right of gateway: Authentication check at GW
gateway->>+microservice: {{.ServicePoints}}
microservice->>+authz: Validate requestor
note right of authz: Authorise to function
authz-->>-microservice: 200 or 401/403 status
microservice->>+feature: Check feature switch
feature-->>-microservice: 200 or 401/403 status
microservice-)log: log request/response
{{ range .Apis}}
microservice-->>+{{ .Name }}: link {{ .Url }}
note right of {{ .Name }}: Explanation of what happens
{{ .Name }}-->>-microservice: 200 OK response
{{ end }}
alt 200 OK
microservice-->>gateway: 200 OK response
gateway-->>consumer: 200 OK response
else not OK, error
microservice-->>-gateway: !200 ERR response
gateway-->>-consumer: !200 ERR response
end
deactivate consumer
```
***Note***: Adjust the default sequence diagram above
Copyright {{.QaskxDot.ServiceOwner}}
Contact {{.QaskxDot.ServiceOwnerEmail}}

View File

@ -0,0 +1,39 @@
%% Service name {{.ServicePoints}}
{{ range .Apis}}
%% Sequence diagram for {{ .ServiceId }} as Svc {{ .Name }}
sequenceDiagram
participant consumer as Consumer
participant gateway as Gateway
participant microservice as {{$.ServiceNames}}
{{ range $.Depends}}
participant {{ .ServiceId }} as Svc {{ .Name }}{{ end }}
consumer->>+gateway: {{$.ServicePoints}}
note right of gateway: Authentication check at GW
gateway->>+microservice: {{$.ServicePoints}}
microservice->>+authz: Validate requestor
note right of authz: Authorise to function
authz-->>-microservice: 200 or 401/403 status
microservice->>+feature: Check feature switch
feature-->>-microservice: 200 or 401/403 status
microservice->>log: log request/response
microservice-->>+{{ .ServiceId }}: link {{ .Url }}
note right of {{ .ServiceId }}: Explanation of what happens
{{ .ServiceId }}-->>-microservice: 200 OK response
alt 200 OK
microservice-->>gateway: 200 OK response
gateway-->>-consumer: 200 OK response
else not OK, error
microservice-->>-gateway: !200 ERR response
gateway-->>-consumer: !200 ERR response
end
{{ end }}

View File

@ -0,0 +1,52 @@
%% {{.ServiceName}} service sequence
sequenceDiagram
participant consumer as Consumer
participant gateway as Gateway
{{ range .Apis}}participant {{ .ServiceId }} as {{.Name}}
{{ end }}
{{ range .Depends}}participant {{ .ServiceId }} as Svc {{ .Name }}
{{ end }}
{{ range .Apis}}
rect rgb(191, 223, 255)
consumer->>+gateway: {{$.ServicePoints}}
note right of gateway: Authentication check at GW
gateway->>+authz: Validate requestor
authz-->>-gateway: 200 or 401/403 status
gateway->>+{{ .ServiceId }}: start
{{ .ServiceId }}->>+authz: Fine grained authz
note right of authz: Authorise to function, data
authz-->>-{{ .ServiceId }}: 200 or 401/403 status
{{ .ServiceId }}->>+featureflag: Check feature switch
featureflag-->>-{{ .ServiceId }}: 200 or 401/403 status
{{ .ServiceId }}->>logger: log request/response
{{ .ServiceId }}->>{{ .ServiceId }}: business logic
note right of {{ .ServiceId }}: Explanation of what happens
{{with $microservice := .ServiceId }}
{{ range $.Depends }}{{ $microservice }}->>+{{ .ServiceId }}: function call
{{ .ServiceId }}-->>- {{ $microservice }}: result, 200 or 4xx status
{{ end }}
{{ end }}
{{ .ServiceId }}->>{{ .ServiceId }}: business logic
note right of {{ .ServiceId }}: Explanation of what happens
alt 200 OK
{{ .ServiceId }}-->>-gateway: 200 OK response
gateway-->>-consumer: 200 OK response
else not OK, error
{{ .ServiceId }}-->>-gateway: !200 ERR response
gateway-->>-consumer: !200 ERR response
end
end
{{ end }}

View File

@ -0,0 +1,20 @@
{
"name": "sd01",
"guide": "{{.SelfFolder}}/sd01.md",
"description": "Markdown sequence template with embedded mermaid",
"templates": [
{
"engine": "",
"folder": "{{.SelfFolder}}/definitions/{{.TemplateName}}",
"file_name": "sd01.md.tmpl",
"output_folder": "^/docs",
"output_name": "seqdgm01.md",
"section": "",
"model": {
"activity": {
"category": "OTHER"
}
}
}
]
}

View File

@ -0,0 +1,20 @@
{
"name": "sd02",
"guide": "{{.SelfFolder}}/sd02.md",
"description": "Mermaid sequence template",
"templates": [
{
"engine": "",
"folder": "{{.SelfFolder}}/definitions/{{.TemplateName}}",
"file_name": "sd02.mermaid.tmpl",
"output_folder": "^/docs",
"output_name": "seqdgm02.mermaid",
"section": "",
"model": {
"activity": {
"category": "OTHER"
}
}
}
]
}