Separate CD process from Jenkins to Spinnaker

Spinnaker is an open-source CD tool which is developed by Netflix, now it’s integrated by cloud providers like AWS/GCP/Azure, you can customize your CD process freely, spinnaker doesn’t want to replace Jenkins, they’re focus on different domains.

It’s a little complex to build Spinnaker, I deployed it by helm in our in-house k8s cluster, and did some modifications on the official chart.

Then I deployed Spinnaker just like:

helm repo update
helm dependency update
helm install --namespace=<NAMESPACE> --name <DEPLOY_NAME> <CHART DIRECTORY>

Wait for a while you can see all the spinnaker related pods are running:

Then you can expose Spinnaker deck service:

export DECK_POD=$(kubectl get pods --namespace delivery-spinnaker -l "cluster=spin-deck" -o jsonpath="{.items[0]}")
kubectl port-forward --namespace delivery-spinnaker $DECK_POD 30900

Now you can visit Spinnaker through browser by http://IP:30900

Here is a example how I deploy my application through Spinnaker

1.Create Application & Project

2.Configure Pipeline under the application

3.Trigger the pipeline manually

4.Check the deployment result

P.S. Also you can check your k8s cluster whether the pods are deployed successfully.