UNPKG

aws-delivlib

Version:

A fabulous library for defining continuous pipelines for building, testing and releasing code libraries.

66 lines (65 loc) 2.07 kB
import { IBuildImage, Project } from 'aws-cdk-lib/aws-codebuild'; import { Artifact, IStage } from 'aws-cdk-lib/aws-codepipeline'; import { IRole } from 'aws-cdk-lib/aws-iam'; import { IFunction } from 'aws-cdk-lib/aws-lambda'; import { IBucket } from 'aws-cdk-lib/aws-s3'; import { Construct, IConstruct } from 'constructs'; import { AddToPipelineOptions } from './pipeline'; export interface ISigner extends IConstruct { addToPipeline(stage: IStage, id: string, options: AddToPipelineOptions): Artifact; } export interface AddSigningOptions { /** * The input artifact to use * * @default Build output artifact */ readonly inputArtifact?: Artifact; /** * Stage name to add signing job to * * @default "Sign" */ readonly stageName?: string; } export interface SignNuGetWithSignerProps { /** * An S3 bucket used to store signed and unsigned DLL files */ readonly signingBucket: IBucket; /** * A Lambda function used to perform signing operations with AWS Signer */ readonly signingLambda: IFunction; /** * A role used provide access to the signing bucket and signing lambda */ readonly accessRole: IRole; /** * The name of the signer profile to use for signing * * @default no signing profile name */ readonly signerProfileName?: string; /** * The owner of the signer profile to use for signing * * @default no signing profile owner */ readonly signerProfileOwner?: string; readonly serviceRole?: IRole; /** * The build image to do the signing in * * Needs to have NuGet preinstalled. * * @default Latest superchain */ readonly buildImage?: IBuildImage; } export declare class SignNuGetWithSigner extends Construct implements ISigner { readonly role: IRole; readonly project: Project; constructor(scope: Construct, id: string, props: SignNuGetWithSignerProps); addToPipeline(stage: IStage, id: string, options: AddToPipelineOptions): Artifact; }