Forum Discussion

FireFighter1017's avatar
FireFighter1017
Advocate III
11 months ago
Solved

Best Practices for continuous deployments

Hi,   I don't have a lot of experience with CI/CD best practices, and I'm looking for help resolving some risks we have with our current process flow.   We currently have Github integration and d...
  • FireFighter1017's avatar
    10 months ago

    Thanks GeraldGEmerick ,

     

    Following your recommendation I ended up with this flow:

     

     Sandbox Workspace ==> GitHub ==> Dev Workspace ==> QA Workspace ==> Prod Workspace ==> App 

     

    Sandbox Workspace: Will serve for any development that we're not sure will make it to production and will serve as a beta testing because I will create an app and publish it only to users enrolled in beta testing and it will contain only the elements we wan't to test.  Once tests are done and we want to publish teh results, we will use the git Integration to export the artefacts to Github, in the same repo the Dev Workspace is connected to.

     

    Github: We will be able to export anything done in the Sandbox Workspace to github and then import it in the Dev Workspace when we're ready to roll it out to QA & Prod.

     

    Dev Workspace: Used to support and create artefacts that are to be deployed in QA & Prod.  Artefacts are updated using Git Integration, with the exception of Dataflows, which will be developped and maintained here, then exported to Github through Git integration for Gen2 and JSON files for Gen1.

     

    QA Workspace: Used to test deployments before going to production.  We will do functional testing there to make sure we have not missed anything during deployment.

     

    Prod Workspace: Closed and protected environment.  Nothing maintained here except through deployment pipelines

     

    App: General access to artefacts for end users.

     

    Let me know what you think.