GitHub Actions Workflows
Types of pipelines
-
flowchart LR DS1[DEPLOY TO TEST] DS1DP1@--| --> DP1[DEPLOY TO PROD] style DS1 fill:#43F8B6,color:#fff,stroke:none style DP1 fill:#F9C66B,color:#fff,stroke:noneFor those that like control!
-
flowchart LR DS2[DEPLOY TO TEST] DS2DP2@-.-> DP2[DEPLOY TO PROD] DS2DP2@{ animation: fast } style DS2 fill:#43F8B6,color:#fff,stroke:none style DP2 fill:#43F8B6,color:#fff,stroke:noneFor the brave ones!
Continuous Delivery Vs. Continuous Deployment?
The only difference between Continuous Deployment and Continuous Delivery is how autonomous the flow from commited change to production is.
Rule of thumb: You have Continuous Deployment if each committed change is automatically deployed to production without any human intervention.
flowchart LR
subgraph CI["Continuous Integration"]
direction LR
B1[BUILDS] B1T1@-.-> T1[RUN TESTS]
B2[BUILDS] B2T2@-.-> T2[RUN TESTS]
end
subgraph CDEP["Continuous Deployment"]
direction LR
DS2[DEPLOY TO TEST] DS2DP2@-.-> DP2[DEPLOY TO PROD]
end
subgraph CD["Continuous Delivery"]
direction LR
DS1[DEPLOY TO TEST] DS1DP1@--| --> DP1[DEPLOY TO PROD]
end
T1 T1DS1@-.-> DS1
T2 T2DS2@-.-> DS2
B1T1@{ animation: fast }
B2T2@{ animation: fast }
%% DS1DP1@{ animation: fast }
DS2DP2@{ animation: fast }
T1DS1@{ animation: fast }
T2DS2@{ animation: fast }
style B1 fill:#43F8B6,color:#fff,stroke:none
style T1 fill:#43F8B6,color:#fff,stroke:none
style DS1 fill:#43F8B6,color:#fff,stroke:none
style DP1 fill:#F9C66B,color:#fff,stroke:none
style B2 fill:#43F8B6,color:#fff,stroke:none
style T2 fill:#43F8B6,color:#fff,stroke:none
style DS2 fill:#43F8B6,color:#fff,stroke:none
style DP2 fill:#43F8B6,color:#fff,stroke:none
style CI fill:none,stroke:#1a5fe0
style CD fill:none,stroke:#ccc,color:#555
style CDEP fill:none,stroke:#ccc,color:#555