forked from kemitix/git-next
37 lines
964 B
Markdown
37 lines
964 B
Markdown
```mermaid
|
|
stateDiagram-v2
|
|
SERVER --> CloneRepo :on start
|
|
SERVER --> UnRegisterWebhook :on shutdown
|
|
|
|
CloneRepo --> LoadConfigFromRepo :on repo config
|
|
CloneRepo --> RegisterWebhook :on server config
|
|
|
|
LoadConfigFromRepo --> ReceiveRepoConfig
|
|
|
|
ValidateRepo --> CheckCIStatus :on next ahead of main
|
|
ValidateRepo --> AdvanceNext :on dev ahead of next
|
|
ValidateRepo --> [*] :on dev == next == main
|
|
ValidateRepo --> [*] :on non-retryable error
|
|
ValidateRepo --> ValidateRepo :on retryable error
|
|
|
|
CheckCIStatus --> ReceiveCIStatus
|
|
|
|
ReceiveCIStatus --> AdvanceMain :on Pass
|
|
ReceiveCIStatus --> ValidateRepo :on Pending
|
|
ReceiveCIStatus --> [*] :on Fail
|
|
|
|
AdvanceNext --> ValidateRepo
|
|
|
|
ReceiveRepoConfig --> RegisterWebhook
|
|
|
|
RegisterWebhook --> WebhookRegistered
|
|
|
|
WebhookRegistered --> ValidateRepo
|
|
|
|
AdvanceMain --> LoadConfigFromRepo :on repo config
|
|
AdvanceMain --> ValidateRepo :on server config
|
|
|
|
[*] --> WebhookNotification :on push
|
|
|
|
WebhookNotification --> ValidateRepo
|
|
```
|