Stelligent

Deploying CodePipeline Dashboard using the AWS Serverless Application Repository

aws-sar.jpeg

Source

Stelligent’s pipeline-dashboard is a serverless open source tool that generates AWS CodePipeline Continuous Delivery metrics via an Amazon CloudWatch Dashboard. You can read more about it in our blog post: CodePipeline Dashboard. The automated provisioning is implemented in AWS CloudFormation and the dashboard functionality is primarily implemented in Node.js via AWS Lambda. In February 2018, AWS announced the general availability of the AWS Serverless Application Repository (SAR) – which enables you to discover, deploy, and publish serverless applications.
With the CodePipeline dashboard solution, you can go to a dashboard and get real-time metrics related on how quickly feedback is flowing across your product teams. With these metrics you can determine some and more of the following:

The reason any of these types of metrics matter is because getting feedback quickly helps influence the effectiveness of the solution. Finding a defect soon after it’s introduced reduces complexity and costs. Learning a particular feature doesn’t meet the needs of your customers helps you more effectively create features your users love.
These metrics are described in more detail in the blog post and README.
In this blog post, you’ll learn the steps for deploying the CodePipeline Dashboard solution using the AWS Serverless Application Repository or through the AWS Lambda console. Once you’ve successfully deployed the solution, you can go to your Amazon CloudWatch Dashboard and see a dashboard similar to the image in Figure 1.

Figure 1 – CodePipeline Dashboard in Amazon CloudWatch

Locating the Dashboard in the AWS SAR

There are two ways to locate the pipeline-dashboard in the AWS Serverless Application Repository. You can either search for the application in the AWS Lambda Console or go directly to the application page that SAR creates for each application.
Option 1:

Option 2:

Deployment Steps

Once you have locating the pipeline-dashboard application in AWS SAR, follow these steps for deploying the application:

  1. In the Configure application parameters section, type a unique name for the stack.
  2. Scroll down and click Deploy. You’ll see resources being created by the CloudFormation stack. It will take approximately 2 minutes to complete the stack creation. You’ll see a message that states “Application successfully deployed” – as shown below.

View the Dashboard

NOTE: To get proper metrics, each of your CodePipeline instances needs to have completed a pipeline at least once (presumably, this means deployed to production). You will also want to wait about 5 minutes after launching the stack before viewing the metrics in the CloudWatch dashboard.
Here are the steps for viewing the metrics generated by the CodePipeline Dashboard:

  1. Go to Amazon CloudWatch
  2. Click on Dashboards
  3. You should see a dashboard called something like Pipelines-us-east-1. Click on it.
  4. You should see the metrics for all of your CodePipeline instances in your region.

Pricing

There are a number of services used in this solution. The actual solution you launch is an Amazon CloudWatch Dashboard and metrics solution. Depending on your AWS account, you can fall into the free tier for the solution but if you have existing dashboards there will be some fees. The relevant parts to CloudWatch pricing include:

More can be found at Amazon CloudWatch Pricing.
For each pipeline you create, you can be charged after it’s been running for at least 30 days. More can be found at Amazon CodePipeline Pricing.

Additional Resources

Stelligent Amazon Pollycast