May 15, 2018

CI/CD Pipelines For Pivotal Cloud Foundry

Table of Contents

Key takeaway

It's been a crazy 6 months since we came out of stealth. The Harness development team has grown to 25 engineers, and our platform support has evolved from Linux, Bare Metal, Amazon Web Services (AWS), Google Cloud Platform (GCP), and Kubernetes to new platforms/stacks like Lambda, Helm, Azure Kubernetes Service (AKS), and now Pivotal Cloud Foundry (PCF).

While AWS undoubtedly wins the majority popular vote, PCF has become a strategic platform and bet for many large F500 enterprises. This is a market that Harness wants to crack.

What Is Pivotal Cloud Foundry?

Think of PCF as an abstract platform that sits across all your existing cloud providers and compute infrastructure. It doesn't matter if your clouds are public or private--hence the draw of hybrid clouds for many enterprises.

PCF manages and abstracts all the run-time and infrastructure dependencies of your applications. You basically deploy your apps to the PCF platform and Bob is very much your Uncle. It's similar to the open-source platform OpenShift, only it focuses more on traditional enterprise apps than just pure container-based apps.

Why Harness Continuous Delivery for PCF?

PCF comes with basic deployment capabilities; however, the following capabilities are why many PCF customers have opted for Harness CD as-a-Service:

  • Deployment Pipeline Analytics & Reporting across all applications, services, and environments.
  • Real-Time Deployment Workflows - the ability for teams to watch and debug deployments in real time.
  • Packaged Deployment Strategies - full support for rolling, canary, and blue/green deployments.
  • Continuous Verification - the ability to automate deployment health checks using machine learning.
  • Automatic Rollback - the ability to instantly rollback when Continuous Verification fails.

In addition, Harness offers a more focused approach to Continuous Delivery so organizations can offer CD as-a-service to internal development and DevOps teams. Think of Harness as a turnkey solution vs. a toolkit.

Setting up Harness for PCF

The first thing you need to do is define your PCF account as a cloud provider inside Harness.
To do this, go to Setup > Cloud Providers > Add Cloud Provider

Add Cloud Provider

Next, enter your PCF account details:

Add Pivotal Cloud Foundry Details

You can optionally place "usage restrictions" on your PCF integration/connector so that only certain apps, services, or environments can use this account. You can also have many PCF cloud providers defined within Harness that can be controlled via our Role-Based Access Control (RBAC).

Building Your First PCF Deployment Pipeline in Harness

First, you need to create and define your PCF services. Think of a service as an artifact or package you would deploy to a PCF Space (Environment).

Go to: Setup > My PCF App > Add Service

Add Service

Next, enter the name of your service and choose "Pivotal Cloud Foundry" as your artifact type:

Pivotal Cloud Foundry Artifact Type

Next, link your artifact repository source to your new service (below). This will ensure Harness automatically picks up and version controls the latest build or version of your artifact/package.

Link Artifact Repository Source

Once your artifact/package is linked to Harness, the next part is to manage the Manifest File of your PCF service, in addition to any configuration variables, secrets, or config files you want to be managed. All this service context will be versioned controlled by Harness so that it can automatically rollback to the last working version if needed.

Once your services are defined, you next need to define environments or PCF spaces that those services will be deployed to.

Go to: Setup > My PCF App > Environments > Create Environment

Give your environment a name and for each service select PCF as your deployment type and select the approriate PCF Cloud Provider. From this point, Harness will query your PCF account and populate the organizations and spaces that will define your environment infrastructure.

Service Infrastructure

Lastly, reference your PCF Route Maps so that traffic to your services and environments can be managed appropriately. You can even define a Temporary Route Map that will be used for blue/green deployment use cases.

Now that your PCF services and environments are defined, you'll be able to create deployment workflows and pipelines like this:

Pipeline With Pivotal Cloud Foundry
Pipeline With Pivotal Cloud Foundry

If you'd like to try Harness Continuous Delivery, sign up for your free trial.


You might also like
No items found.

Similar Blogs

No items found.