← All Articles

Step 4 to Web App Deployment: CI/CD Pipelines (Making Deployments Repeatable)

Kelley SchultzKelley Schultz
Apr 26th 26Updated Apr 28th 26
devops
CI/CD pipelines
deployment

So far in this deployment series, you’ve:

  1. Deployed your front-end
  2. Got your back-end running
  3. Wired up DNS and made your app live

At this point, you can deploy your app. The question is: do you really want to keep doing it manually?

Welcome to CI/CD — where deployments stop being an event and start becoming a system.

Why this step matters

Manual deployments work… right up until they don’t.

They rely on:

  • Memory ("did I run that migration?")
  • Timing ("let’s deploy after standup")
  • And luck ("it worked last time")

CI/CD replaces all of that with something far more reliable: automation. Every change follows the same path. Every time.

What CI/CD actually means

CI/CD stands for:

  • Continuous Integration (CI): Automatically building and testing your code when changes are pushed
  • Continuous Deployment (CD): Automatically deploying those changes once they pass checks

The basic flow looks like this:

Code pushed → Build → Test → Deploy → Live

The yellow brick road.

Step 1: Triggering the pipeline

Everything starts with a trigger.

Usually, this looks like:

  • A push to a branch (e.g. main)
  • A pull request
  • A tag or release

Example

Developer pushes code → Git provider (GitHub, GitLab, etc.)

CI/CD pipeline starts

No manual intervention required.

Step 2: Build stage

This is where your app is turned into something deployable.

Depending on your stack, this might include:

  • Installing dependencies
  • Compiling assets
  • Building Docker images

Example (containerized app)

Code → Docker build → Image created

If this step fails, nothing moves forward. Which is exactly what you want - catch the break before you do.

Step 3: Test stage

Now we make sure nothing broken is missed from the build stage. This can include:

  • Unit tests
  • Integration tests
  • Linting and static analysis

Example flow

Build successful

Run tests

Pass → continue

Fail → stop everything

This is giving “fixed before production” energy, and we are here for it.

Step 4: Deploy stage

If everything passes the test stage, your app gets deployed.

Example deployment flow

Approved build

Deploy to staging (optional)

Deploy to production

This can be:

  • Fully automatic (continuous deployment)
  • Or gated with approvals (continuous delivery)

Putting it all together

Here’s what a full pipeline looks like:

Developer pushes code

CI triggers pipeline

Build → Test → Deploy

Application updated in production

No SSH. No manual steps. No guesswork.

Common pipeline patterns.

As things grow, pipelines evolve.

1. Staging first

Build → Test → Deploy to Staging → Approve → Production

2. Feature branches

Feature branch → Preview environment → Merge → Production

3. Blue/Green deployments

  • Current version (blue)
  • New version (green)
  • Switch traffic when ready

Each pattern reduces risk in different ways.

Where things can get tricky

CI/CD sounds simple, and in theory, it is. In practice, it can get more complex.

  • Managing secrets and environment variables
  • Keeping pipelines fast (no one likes 20-minute builds)
  • Handling rollbacks
  • Coordinating database migrations

And then there’s the tools getting stitched together:

  • GitHub Actions
  • GitLab CI
  • Jenkins
  • Docker registries
  • Deployment scripts

Where platforms really help

This is where platforms like Cloud 66 start to simplify things.

Instead of building your CI/CD pipeline from scratch, you define your application and deployment strategy once.

Cloud 66, the all-in-one deployment solution, then handles:

  • Building and deploying your app
  • Managing environments
  • Orchestrating deployments across your infrastructure

You still keep control of your cloud and servers — but without wiring every step together manually.

It’s CI/CD without the stitching.

What’s next?

At this point, you’ve moved from:

“I can deploy my app” to: “My app deploys itself, reliably”

In the next and final step of our series, we’ll look at what happens after deployment: Monitoring, logging, and alerts — because even perfect pipelines don’t always prevent production issues.

Final thought

CI/CD pipelines turn deployment from a fragile, manual process into something predictable. And predictability is what lets you build and deploy faster without breaking everything.


Try Cloud 66 for Free, No credit card required