Data flow GitLab vs. multiple applications
About the data flow in GitLab
How does having one application vs many applications impact workflow?
The data flows below are based on the experience of one enterprise customer who switched from multiple DevOps tools to GitLab.
The source data can be found in this spreadsheet.
GitLab
graph TB Developer1(1. Developer<br>Develops & Tests) App1[App] TestEnv1([Test<br>Environment]) App1 -- 5. Deploy --> TestEnv1 TestEnv1 -- 8.Verify application --> Developer1 Developer2(2. Developer Deploys) ProdEnv1([Production<br>Environment]) App2[App] App2 --> ProdEnv1 Developer3(3. Developer Maintains) ProdEnv2([Production<br>Environment]) GitLab[GitLab] Developer1 -- 1. Login<br>View Issue --> GitLab Developer1 -- 2. Change Code<br>Submit MR --> GitLab GitLab -- 3. Build App --> App1 GitLab -- 4. Deploy --> TestEnv1 GitLab -- 5. Run quality tests --> TestEnv1 GitLab -- 6. Run security tests --> TestEnv1 Developer2 -- 1. Deploy --> GitLab Developer2 -- 2. Mark issue<br>as fixed --> GitLab TestEnv1 -- Promote --> App2 ProdEnv2 -- 1. Application Logs --> GitLab ProdEnv2 -- 2. Application Metrics --> GitLab Developer3 -- 3. Review Logs --> GitLab classDef default fill:#FFFFFF,stroke:#0C7CBA; %%class GitLab,Developer test
Multiple DevOps Tools
graph TB DeveloperMain(Developer) AppD(App) SourceControlD(Source Control) CIToolD(CI Tool) CDToolD(CD Tool) TestEnvD(Test Env) IssueTrackerD(Issue Tracker) DeveloperD(Developer) DeveloperD -- 1. Login --> IssueTrackerD DeveloperD -- 2. View Issue --> IssueTrackerD DeveloperD -- 3. Login --> SourceControlD DeveloperD -- 4. View Issue --> SourceControlD DeveloperD -- 5. Login --> CIToolD DeveloperD -- 6. Submit MR --> CIToolD SourceControlD --> CIToolD CIToolD -- 7. Build --> AppD DeveloperD -- 8. Login --> CDToolD DeveloperD -- 9. Deploy --> CDToolD CDToolD -- 11. Deploy --> TestEnvD AppD --10. Pull --> CDToolD TestEnvD -- 12. Verify --> DeveloperD SecEngMain(Security Eng) SecEngMain--> SecEngT SecEngMain --> SecEngD DeveloperMain --1. Develop -->DeveloperD DeveloperMain --2. Test -->DeveloperT DeveloperT(Developer) TestToolT(Test Tool) SAST(SAST Tool) SecretScan(Secret Scan) DependencyScan(Dependency Scan) SecEngT(Security Eng) TestResults(Test Results) QualityTeamT(Quality Team) DeveloperT --1. Login & Run Tests --> TestToolT TestToolT --> TestResults SAST --> TestResults SecretScan --> TestResults DAST --> TestResults DependencyScan --> TestResults DeveloperT -- 2. Login & Run Tests --> SAST DeveloperT -- 3. Login & Run Tests --> SecretScan DeveloperT -- 4. Login & Run Tests --> DependencyScan DeveloperT -- 5. RequestDAST Scan--> SecEngT SecEngT -- 6. Login & Run Tests --> DAST TestResults -- 7. Review Results --> DeveloperT TestToolT --> SAST SAST --> SecretScan SecretScan --> DependencyScan DependencyScan --> DAST TestToolT -- 8. Review results --> QualityTeamT DeveloperMain --3. Deploy --> DeveloperDep DeveloperDep(Developer) QualityTeamDep(Quality Team) ProdOpsD(Production Ops) SecEngD(Security Eng) CDTool(CD Tool) ProdEnv(Prod Env) IssueTrackerDep(Issue Tracker) DeveloperDep -- 1. Request Approval --> QualityTeamDep QualityTeamDep --2. Approval --> SecEngD SecEngD -- 3. Approval --> ProdOpsD ProdOpsD -- 4. Login and Deploy --> CDTool CDTool --5. Deploy --> ProdEnv ProdOpsD --6. Complete --> DeveloperDep DeveloperDep -- 7. Close issue --> IssueTrackerDep DeveloperMain -- 4. Maintain -->DeveloperM QualityTeamMain(QualityTeam) QualityTeamMain --> QualityTeamT QualityTeamMain --> QualityTeamDep ProdOpsMain(Production Ops) ProdOpsMain --> ProdOpsD ProdOpsMain --> ProdOpsMaintain DeveloperM(Developer) ProdEnvM(Prod Env) LogApp(Log App) MetricsApp(Metrics App) ProdOpsMaintain(Production Ops) ProdEnvM --1 . Logs --> LogApp LogApp --2. Metrics --> MetricsApp DeveloperM -- 3. Login & View--> LogApp DeveloperM --4. Login & View --> MetricsApp ProdOpsMaintain -- 3. Login & View--> LogApp ProdOpsMaintain --4. Login & View --> MetricsApp classDef default fill:#FFFFFF,stroke:#0C7CBA; %%class GitLab,Developer test
Last modified December 2, 2024: Add description to prevent excerpt issues (
3c2a52d1
)