aws-cdk-build-badge

[![NPM version](https://badge.fury.io/js/aws-cdk-build-badge.svg)](https://badge.fury.io/js/aws-cdk-build-badge) [![PyPI version](https://badge.fury.io/py/aws-cdk-build-badge.svg)](https://badge.fury.io/py/aws-cdk-build-badge) [![.NET version](https://img

Usage no npm install needed!

<script type="module">
  import awsCdkBuildBadge from 'https://cdn.skypack.dev/aws-cdk-build-badge';
</script>

README

NPM version PyPI version .NET version Release

tested cdk versions

aws-cdk-build-badge

This an AWS CDK custom construct for get the status of a CodeBuild Project with has CodePipeline as source. That is currently not possible:

How the native badges are working you find in the AWS docs:

After you created the build badge construct you can use the api gateway url to get the badge picture. Additionally you can retrieve the url to to the CodeBuild build with adding ?url=true to the query parameter. See the example.

URL to Build

If you want your badge forwarding you to your build when you click on it use the url=true parameter:

Build succeeded: [![CodeBuild test build](https://fktijpwdng.execute-api.eu-central-1.amazonaws.com/prod/?projectName=PipelineCustomStageprodTest-Fdei5bm2ulR6)](https://fktijpwdng.execute-api.eu-central-1.amazonaws.com/prod/?projectName=PipelineCustomStageprodTest-Fdei5bm2ulR6&url=true)

Default project name

You can use the defaultProjectName in the cdk construct to point the badge to a specific project. That way you don't need to write the projectName parameter in thr url.

new BuildBadge(stack, 'BuildBadge2', { defaultProjectName: 'Build123' });

Example

Build succeeded: CodeBuild test build

Build failed: CodeBuild test build

Build not found: CodeBuild test build

Build in progress: CodeBuild test build

Build stopped: CodeBuild test build

There are more badges (see ./badges/) but I don't have build in that state atm.

const app = new cdk.App();

const stack = new cdk.Stack(app, 'my-build-badge-demo-stack');

// without exposing the account id in the url when using ?url=true
new BuildBadge(stack, 'BuildBadge');

// with exposing the account id in the url when using ?url=true
new BuildBadge(stack, 'BuildBadge2', { hideAccountID: 'no' });

// partly exposing the account id in the url when using ?url=true
new BuildBadge(stack, 'BuildBadge3', { hideAccountID: 'XX123356' });

Thanks To