https://github.com/samsmithnz/parallelworkflowsdemo
A demo to show parallel workflow benefits
https://github.com/samsmithnz/parallelworkflowsdemo
actions hosted-runners parallel-jobs
Last synced: 10 months ago
JSON representation
A demo to show parallel workflow benefits
- Host: GitHub
- URL: https://github.com/samsmithnz/parallelworkflowsdemo
- Owner: samsmithnz
- License: mit
- Created: 2022-09-21T15:40:57.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-01-19T14:16:05.000Z (about 3 years ago)
- Last Synced: 2024-04-28T01:24:23.653Z (almost 2 years ago)
- Topics: actions, hosted-runners, parallel-jobs
- Homepage:
- Size: 951 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ParallelWorkflowsDemo
A demo to show parallel workflow benefits
Simple workflow to build/test (time - 1min 30s)
```mermaid
graph LR;
buildAll[Build website 30s]-->testAll[Test website 30s]-->deployAll[Deploy website 30s]
```
Simple workflow to build test with parallal jobs (time - 1 min)
```mermaid
graph LR;
buildAll[Build website 30s]-->deployAll[Deploy website 30s];
testAll[Test website 30s]-->deployAll[Deploy website 30s];
```
Complex workflow to build, test, then deploy our app. (total time: ~6 mins)
```mermaid
graph LR;
ci((CI))-->buildAll[Build store website,
payment service,
& inventory service
1m 30s]-->testAll[Test store website,
payment service,
& inventory service
1m 30s]-->cd((CD));
cd((CD))-->deployAll[Deploy store website,
payment service,
& inventory service
1m 30s]-->smoke[Smoke test 30s];
```
Complex workflow, using parallel jobs, on the same dataset (~2 mins)
```mermaid
graph LR;
ci((CI))-->buildWeb[Build store website 30s]-->testWeb[Test store website 30s]-->cd((CD));
ci((CI))-->buildPay[Build payment service 30s]-->testPay[Test payment service 30s]-->cd((CD));
ci((CI))-->buildInv[Build inventory service 30s]-->testInv[Test inventory service 30s]-->cd((CD));
cd((CD))-->deployWeb[Deploy store website 30s]-->smoke[Smoke test 30s];
cd((CD))-->deployPay[Deploy payment service 30s]-->smoke[Smoke test 30s];
cd((CD))-->deployInv[Deploy inventory service 30s]-->smoke[Smoke test 30s];
```
Complex workflow, using parallel jobs to run build and test tasks at the same time, on the same dataset (1:30 mins)
```mermaid
graph LR;
ci((CI))-->buildWeb[Build store website 30s]-->cd((CD));
ci((CI))-->buildPay[Build payment service 30s]-->cd((CD));
ci((CI))-->buildInv[Build inventory service 30s]-->cd((CD));
ci((CI))-->testWeb[Test store website 30s]-->cd((CD));
ci((CI))-->testPay[Test payment service 30s]-->cd((CD));
ci((CI))-->testInv[Test inventory service 30s]-->cd((CD));
cd((CD))-->deployWeb[Deploy store website 30s]-->smoke[Smoke test 30s];
cd((CD))-->deployPay[Deploy payment service 30s]-->smoke[Smoke test 30s];
cd((CD))-->deployInv[Deploy inventory service 30s]-->smoke[Smoke test 30s];