Skip to main content

@aws-prototyping-sdk/pipeline

Project description

The pipeline module vends an extension to CDK's CodePipeline construct, named PDKPipeline. It additionally creates a CodeCommit repository and by default is configured to build the project assumming nx-monorepo is being used (although this can be changed). A Sonarqube Scanner can also be configured to trigger a scan whenever the synth build job completes successfully. This Scanner is non-blocking and as such is not instrumented as part of the pipeline.

The architecture for the PDKPipeline is as follows:

CodeCommit repository -> CodePipeline
                             |-> EventBridge Rule (On Build Succeded) -> CodeBuild (Sonar Scan)
                             |-> Secret (sonarqube token)

This module additionally vends multiple Projen Projects, one for each of the supported languages. These projects aim to bootstrap your project by providing sample code which uses the PDKPipeline construct.

For example, in .projenrc.ts:

new PDKPipelineTsProject({
    cdkVersion: "2.1.0",
    defaultReleaseBranch: "mainline",
    devDeps: ["aws-prototyping-sdk"],
    name: "my-pipeline",
});

This will generate a package in typescript containing CDK boilerplate for a pipeline stack (which instantiates PDKPipeline), sets up a Dev stage with an Application Stage containing an empty ApplicationStack (to be implemented). Once this package is synthesized, you can run npx projen and projen will synthesize your cloudformation.

Alternatively, you can initialize a project using the cli (in an empty directory) for each of the supported languages as follows:

# Typescript
npx projen new --from aws-prototyping-sdk pdk-pipeline-ts
# Python
npx projen new --from aws-prototyping-sdk pdk-pipeline-py
# Java
npx projen new --from aws-prototyping-sdk pdk-pipeline-java

CDK Nag

In order to keep CDK Nag happy, make sure you build the pipeline before synth as per https://github.com/aws/aws-cdk/issues/18440.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws_prototyping_sdk.pipeline-0.3.12.tar.gz (123.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aws_prototyping_sdk.pipeline-0.3.12-py3-none-any.whl (122.9 kB view details)

Uploaded Python 3

File details

Details for the file aws_prototyping_sdk.pipeline-0.3.12.tar.gz.

File metadata

File hashes

Hashes for aws_prototyping_sdk.pipeline-0.3.12.tar.gz
Algorithm Hash digest
SHA256 7a64d326d29bc0f66b8678a7b4608dc09365dd8fc96af53c9b1c57f202116fee
MD5 794c8cbb0537ce3fbcf282514d3adca2
BLAKE2b-256 97e1c1ee28e1fe82d4a6184c62e23fa8077c877219b656978488f71e3cfaac42

See more details on using hashes here.

File details

Details for the file aws_prototyping_sdk.pipeline-0.3.12-py3-none-any.whl.

File metadata

File hashes

Hashes for aws_prototyping_sdk.pipeline-0.3.12-py3-none-any.whl
Algorithm Hash digest
SHA256 f26597a3236f1fdc0d59f3958c5228fa9f57baa3cf9f9a0b8aae28df017346c1
MD5 74f7495ff4f440074a890c9cf9c2a636
BLAKE2b-256 c4bff9f71131c984e684b0819f8146441f3aa2e800b5cd3b5a9e110f7fbd88e5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page