GitHub Actions Workflows

Types of pipelines

  • Continuous Delivery


    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:none

    For those that like control!

  • Continuous Deployment


    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:none

    For 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