OWASP dependency-check for codecommit repositories
Project description
@cloudcomponents/cdk-dependency-check
OWASP dependency-check for codecommit repositories
Install
TypeScript/JavaScript:
npm i @cloudcomponents/cdk-dependency-check
Python:
pip install cloudcomponents.cdk-dependency-check
How to use
import { CodeCommitDependencyCheck } from '@cloudcomponents/cdk-dependency-check';
import { Stack, StackProps } from 'aws-cdk-lib';
import { Repository } from 'aws-cdk-lib/aws-codecommit';
import { Schedule } from 'aws-cdk-lib/aws-events';
import { SnsTopic } from 'aws-cdk-lib/aws-events-targets';
import { Bucket } from 'aws-cdk-lib/aws-s3';
import { Topic } from 'aws-cdk-lib/aws-sns';
import { EmailSubscription } from 'aws-cdk-lib/aws-sns-subscriptions';
import { Construct } from 'constructs';
export class DependencyCheckStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
if (typeof process.env.REPOSITORY_NAME === 'undefined') {
throw new Error('environment variable REPOSITORY_NAME undefined');
}
const repository = Repository.fromRepositoryName(this, 'Repository', process.env.REPOSITORY_NAME);
const reportsBucket = new Bucket(this, 'Bucket');
// The following example runs a task every day at 4am
const check = new CodeCommitDependencyCheck(this, 'CodeCommitDependencyCheck', {
repository,
reportsBucket,
preCheckCommand: 'npm i',
schedule: Schedule.cron({
minute: '0',
hour: '4',
}),
});
const checkTopic = new Topic(this, 'CheckTopic');
if (process.env.DEVSECOPS_TEAM_EMAIL) {
checkTopic.addSubscription(new EmailSubscription(process.env.DEVSECOPS_TEAM_EMAIL));
}
check.onCheckStarted('started', {
target: new SnsTopic(checkTopic),
});
check.onCheckSucceeded('succeeded', {
target: new SnsTopic(checkTopic),
});
check.onCheckFailed('failed', {
target: new SnsTopic(checkTopic),
});
}
}
Upload HTML Reports
const reportsBucket = new Bucket(this, 'Bucket');
// The following example runs a task every day at 4am
const check = new CodeCommitDependencyCheck(this, 'CodeCommitDependencyCheck', {
repository,
reportsBucket,
preCheckCommand: 'npm i',
schedule: Schedule.cron({
minute: '0',
hour: '4',
}),
});
API Reference
See API.md.
Example
See more complete examples.
License
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
Built Distribution
Close
Hashes for cloudcomponents.cdk-dependency-check-2.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9258e1ca62ab6c1333a667a6c9313d8cbb3116162a1ac9a6b7fddbf9ecb13510 |
|
MD5 | 408525c0863db8ed375de30c3b564cbc |
|
BLAKE2b-256 | 56e05dfe72dc6af8a8d329a54df8b6a9ed69438ffd1cbfdfafe3911b4fdd0564 |
Close
Hashes for cloudcomponents.cdk_dependency_check-2.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6251540f8b57687f82a2aaa3905ff2b6ebbb3cd5c0b004dbfa94cfeb18fc6fa |
|
MD5 | c3ffc48abe710e9bfab116f5f6c682a4 |
|
BLAKE2b-256 | c7bd7ca6ffb7bfd4a980e94615c0aac5b6e0e4b3a50e3b365abd7e0b5d05bb8c |