how do developers add new function on a massive online Saas application although it is running?

55 views Asked by At

I want to know how developer continously develop a web application on cloud. which software or which development environment they ae using? Is Docker correct answer? Thank you

1

There are 1 answers

0
LostJon On

This is an extremely open ended question, so I will give you a relatively open ended answer. CI/CD isn't really a defined process, but typically people follow the same strategy.

CI:

  1. Develop and store code in Git or some repository
  2. Execute unit test cases
  3. Build Source Code

At this point, you have code that is being continuously tested and built. Now continuous delivery (CD) kicks in. This differs from company to company, but it may follow the below

CD:

  1. Deploy Source Code to development integration testing server (DIT)
  2. Execute Automated test portfolio
  3. Deploy Source Code to Stage or Pre Prod environment
  4. Execute Automated test portfolio

Now at this point in time you have your code fully tested and deployed to internal testing/stage servers. As a company, you can decide whether your confidence level is high enough to implement continuous deployment or if you implement a change mgmt process. continuous deployment is similar to continuous delivery EXCEPT you deploy the built application/service to production automatically with no gates in place. Then, you will run your test portfolio again against prod. Do not do performance testing in prod (do this testing in stage typically)

Product typically used for CI = Jenkins (open source, great community support) Product(s) typically used for CD = Puppet, Chef, Ansible, uDeploy

Disclaimer - please do not get into a conversation about which products are best used for which stage...I only know what I know; and I know there are other tools to do CI/CD that I havent mentioned.