@@ -20,20 +20,33 @@ Tools used to optimize the pipeline (See the `.github/workflows/ci.yml` for more
20
20
# CI/CD Diagram
21
21
``` mermaid
22
22
stateDiagram
23
- state Continuous-Integration {
23
+ state Developer-Workflow {
24
24
Commits --> PR: Developers Commit new changes in a Pull Request
25
- PR --> CI: Security Scans, Build & Unit Test Suit
26
- CI --> PR: Feedback of failed tests - back to dev
27
- CI --> Publish: If CI passes, \nmerging to main branch \nand publishing Containerised\n App to GHCR
25
+ PR --> Build: Security Scans, Build & Unit Test Suit
28
26
}
29
27
30
- state Parallel-Testing {
31
- CI --> JunitTest1
32
- CI --> JunitTest2
33
- CI --> JunitTest3
34
- CI --> JunitTest..N
28
+ state Continuous-Integration {
29
+ state GitHub-Advanced-Security {
30
+ Build --> PR: Feedback of failed tests - back to dev
31
+ Build --> JunitTests
32
+ JunitTests --> Publish
33
+ note left of Build: Security Scans, Build & Unit Test Suit
34
+ state Parallel-Testing {
35
+ JunitTests --> JunitTest1
36
+ JunitTests --> JunitTest2
37
+ JunitTests --> JunitTest3
38
+ JunitTests --> JunitTest4
39
+ JunitTests --> JunitTest5
40
+ JunitTests --> JunitTest..N
41
+ note left of JunitTest1 : Each test runs in \na containerized environment
42
+ note left of JunitTest1 : Optionally tests can run \nwith a service container\n to test backend\n database changes
43
+ note right of JunitTests: If CI passes, \nmerging to main branch \nand publishing Containerised\n App to GitHub\n Container Registry
44
+ }
45
+ }
35
46
}
36
47
48
+
49
+
37
50
state Continuous-Delivery {
38
51
Publish --> PreProdTests: Pulling Image from GHDR
39
52
PreProdTests --> Deploy: Deploy the app to K8s
0 commit comments