aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
138 lines (137 loc) • 4.28 kB
TypeScript
import { Construct, IConstruct } from 'constructs';
import * as codepipeline from '../../../aws-codepipeline';
/**
* A Jenkins provider.
*
* If you want to create a new Jenkins provider managed alongside your CDK code,
* instantiate the `JenkinsProvider` class directly.
*
* If you want to reference an already registered provider,
* use the `JenkinsProvider#fromJenkinsProviderAttributes` method.
*/
export interface IJenkinsProvider extends IConstruct {
readonly providerName: string;
readonly serverUrl: string;
readonly version: string;
/**
* Registers a Jenkins Provider for the build category.
* This method will be automatically called when creating
* a `JenkinsAction`,
* so you should never need to call it explicitly.
*
* @internal
*/
_registerBuildProvider(): void;
/**
* Registers a Jenkins Provider for the test category.
* This method will be automatically called when creating
* a `JenkinsTestAction`,
* so you should never need to call it explicitly.
*
* @internal
*/
_registerTestProvider(): void;
}
/**
* Properties for importing an existing Jenkins provider.
*/
export interface JenkinsProviderAttributes {
/**
* The name of the Jenkins provider that you set in the AWS CodePipeline plugin configuration of your Jenkins project.
*
* @example 'MyJenkinsProvider'
*/
readonly providerName: string;
/**
* The base URL of your Jenkins server.
*
* @example 'http://myjenkins.com:8080'
*/
readonly serverUrl: string;
/**
* The version of your provider.
*
* @default '1'
*/
readonly version?: string;
}
export interface JenkinsProviderProps {
/**
* The name of the Jenkins provider that you set in the AWS CodePipeline plugin configuration of your Jenkins project.
*
* @example 'MyJenkinsProvider'
*/
readonly providerName: string;
/**
* The base URL of your Jenkins server.
*
* @example 'http://myjenkins.com:8080'
*/
readonly serverUrl: string;
/**
* The version of your provider.
*
* @default '1'
*/
readonly version?: string;
/**
* Whether to immediately register a Jenkins Provider for the build category.
* The Provider will always be registered if you create a `JenkinsAction`.
*
* @default false
*/
readonly forBuild?: boolean;
/**
* Whether to immediately register a Jenkins Provider for the test category.
* The Provider will always be registered if you create a `JenkinsTestAction`.
*
* @default false
*/
readonly forTest?: boolean;
}
export declare abstract class BaseJenkinsProvider extends Construct implements IJenkinsProvider {
abstract readonly providerName: string;
abstract readonly serverUrl: string;
readonly version: string;
protected constructor(scope: Construct, id: string, version?: string);
/**
* @internal
*/
abstract _registerBuildProvider(): void;
/**
* @internal
*/
abstract _registerTestProvider(): void;
}
/**
* A class representing Jenkins providers.
*
* @see #import
*/
export declare class JenkinsProvider extends BaseJenkinsProvider {
/**
* Import a Jenkins provider registered either outside the CDK,
* or in a different CDK Stack.
*
* @param scope the parent Construct for the new provider
* @param id the identifier of the new provider Construct
* @param attrs the properties used to identify the existing provider
* @returns a new Construct representing a reference to an existing Jenkins provider
*/
static fromJenkinsProviderAttributes(scope: Construct, id: string, attrs: JenkinsProviderAttributes): IJenkinsProvider;
readonly providerName: string;
readonly serverUrl: string;
private buildIncluded;
private testIncluded;
constructor(scope: Construct, id: string, props: JenkinsProviderProps);
/**
* @internal
*/
_registerBuildProvider(): void;
/**
* @internal
*/
_registerTestProvider(): void;
private registerJenkinsCustomAction;
}
export declare const jenkinsArtifactsBounds: codepipeline.ActionArtifactBounds;