UNPKG

iam-floyd

Version:

AWS IAM policy statement generator with fluent interface

506 lines (505 loc) 20.3 kB
import { AccessLevelList } from '../../shared/access-level'; import { PolicyStatement, Operator } from '../../shared'; /** * Statement provider for service [codepipeline](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodepipeline.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ export declare class Codepipeline extends PolicyStatement { servicePrefix: string; /** * Statement provider for service [codepipeline](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awscodepipeline.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ constructor(sid?: string); /** * Grants permission to view information about a specified job and whether that job has been received by the job worker * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_AcknowledgeJob.html */ toAcknowledgeJob(): this; /** * Grants permission to confirm that a job worker has received the specified job (partner actions only) * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_AcknowledgeThirdPartyJob.html */ toAcknowledgeThirdPartyJob(): this; /** * Grants permission to create a custom action that you can use in the pipelines associated with your AWS account * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_CreateCustomActionType.html */ toCreateCustomActionType(): this; /** * Grants permission to create a uniquely named pipeline * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_CreatePipeline.html */ toCreatePipeline(): this; /** * Grants permission to delete a custom action * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_DeleteCustomActionType.html */ toDeleteCustomActionType(): this; /** * Grants permission to delete a specified pipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_DeletePipeline.html */ toDeletePipeline(): this; /** * Grants permission to delete a specified webhook * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_DeleteWebhook.html */ toDeleteWebhook(): this; /** * Grants permission to remove the registration of a webhook with the third party specified in its configuration * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_DeregisterWebhookWithThirdParty.html */ toDeregisterWebhookWithThirdParty(): this; /** * Grants permission to prevent revisions from transitioning to the next stage in a pipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_DisableStageTransition.html */ toDisableStageTransition(): this; /** * Grants permission to allow revisions to transition to the next stage in a pipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_EnableStageTransition.html */ toEnableStageTransition(): this; /** * Grants permission to view information about an action type * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_GetActionType.html */ toGetActionType(): this; /** * Grants permission to view information about a job (custom actions only) * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_GetJobDetails.html */ toGetJobDetails(): this; /** * Grants permission to retrieve information about a pipeline structure * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_GetPipeline.html */ toGetPipeline(): this; /** * Grants permission to view information about an execution of a pipeline, including details about artifacts, the pipeline execution ID, and the name, version, and status of the pipeline * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_GetPipelineExecution.html */ toGetPipelineExecution(): this; /** * Grants permission to view information about the current state of the stages and actions of a pipeline * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_GetPipelineState.html */ toGetPipelineState(): this; /** * Grants permission to view the details of a job for a third-party action (partner actions only) * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_GetThirdPartyJobDetails.html */ toGetThirdPartyJobDetails(): this; /** * Grants permission to list the action executions that have occurred in a pipeline * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListActionExecutions.html */ toListActionExecutions(): this; /** * Grants permission to list a summary of all the action types available for pipelines in your account * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListActionTypes.html */ toListActionTypes(): this; /** * Grants permission to list a summary of the most recent executions for a pipeline * * Access Level: List * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListPipelineExecutions.html */ toListPipelineExecutions(): this; /** * Grants permission to list a summary of all the pipelines associated with your AWS account * * Access Level: List * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListPipelines.html */ toListPipelines(): this; /** * Grants permission to list the rule executions that have occurred in a pipeline * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListRuleExecutions.html */ toListRuleExecutions(): this; /** * Grants permission to list a summary of all the rule types available for pipelines in your account * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListRuleTypes.html */ toListRuleTypes(): this; /** * Grants permission to list tags for a CodePipeline resource * * Access Level: Read * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListTagsForResource.html */ toListTagsForResource(): this; /** * Grants permission to list all of the webhooks associated with your AWS account * * Access Level: List * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_ListWebhooks.html */ toListWebhooks(): this; /** * Grants permission to resume the pipeline execution by overriding a condition in a stage * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_OverrideStageCondition.html */ toOverrideStageCondition(): this; /** * Grants permission to view information about any jobs for CodePipeline to act on * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PollForJobs.html */ toPollForJobs(): this; /** * Grants permission to determine whether there are any third-party jobs for a job worker to act on (partner actions only) * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PollForThirdPartyJobs.html */ toPollForThirdPartyJobs(): this; /** * Grants permission to edit actions in a pipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutActionRevision.html */ toPutActionRevision(): this; /** * Grants permission to provide a response (Approved or Rejected) to a manual approval request in CodePipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutApprovalResult.html */ toPutApprovalResult(): this; /** * Grants permission to represent the failure of a job as returned to the pipeline by a job worker (custom actions only) * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutJobFailureResult.html */ toPutJobFailureResult(): this; /** * Grants permission to represent the success of a job as returned to the pipeline by a job worker (custom actions only) * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutJobSuccessResult.html */ toPutJobSuccessResult(): this; /** * Grants permission to represent the failure of a third-party job as returned to the pipeline by a job worker (partner actions only) * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutThirdPartyJobFailureResult.html */ toPutThirdPartyJobFailureResult(): this; /** * Grants permission to represent the success of a third-party job as returned to the pipeline by a job worker (partner actions only) * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutThirdPartyJobSuccessResult.html */ toPutThirdPartyJobSuccessResult(): this; /** * Grants permission to create or update a webhook * * Access Level: Write * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_PutWebhook.html */ toPutWebhook(): this; /** * Grants permission to register a webhook with the third party specified in its configuration * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RegisterWebhookWithThirdParty.html */ toRegisterWebhookWithThirdParty(): this; /** * Grants permission to resume the pipeline execution by retrying the last failed actions in a stage * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RetryStageExecution.html */ toRetryStageExecution(): this; /** * Grants permission to rollback the stage to a previous successful execution * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RollbackStage.html */ toRollbackStage(): this; /** * Grants permission to run the most recent revision through the pipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_StartPipelineExecution.html */ toStartPipelineExecution(): this; /** * Grants permission to stop an in-progress pipeline execution * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_StopPipelineExecution.html */ toStopPipelineExecution(): this; /** * Grants permission to tag a CodePipeline resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsRequestTag() * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_TagResource.html */ toTagResource(): this; /** * Grants permission to remove a tag from a CodePipeline resource * * Access Level: Tagging * * Possible conditions: * - .ifAwsTagKeys() * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_UntagResource.html */ toUntagResource(): this; /** * Grants permission to update an action type * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_UpdateActionType.html */ toUpdateActionType(): this; /** * Grants permission to update a pipeline with changes to the structure of the pipeline * * Access Level: Write * * https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_UpdatePipeline.html */ toUpdatePipeline(): this; protected accessLevelList: AccessLevelList; /** * Adds a resource of type action to the statement * * https://docs.aws.amazon.com/codepipeline/latest/userguide/iam-access-control-identity-based.html#ACP_ARN_Format * * @param pipelineName - Identifier for the pipelineName. * @param stageName - Identifier for the stageName. * @param actionName - Identifier for the actionName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onAction(pipelineName: string, stageName: string, actionName: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type actiontype to the statement * * https://docs.aws.amazon.com/codepipeline/latest/userguide/iam-access-control-identity-based.html#ACP_ARN_Format * * @param owner - Identifier for the owner. * @param category - Identifier for the category. * @param provider - Identifier for the provider. * @param version - Identifier for the version. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onActiontype(owner: string, category: string, provider: string, version: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type pipeline to the statement * * https://docs.aws.amazon.com/codepipeline/latest/userguide/iam-access-control-identity-based.html#ACP_ARN_Format * * @param pipelineName - Identifier for the pipelineName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onPipeline(pipelineName: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type stage to the statement * * https://docs.aws.amazon.com/codepipeline/latest/userguide/iam-access-control-identity-based.html#ACP_ARN_Format * * @param pipelineName - Identifier for the pipelineName. * @param stageName - Identifier for the stageName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onStage(pipelineName: string, stageName: string, account?: string, region?: string, partition?: string): this; /** * Adds a resource of type webhook to the statement * * https://docs.aws.amazon.com/codepipeline/latest/userguide/iam-access-control-identity-based.html#ACP_ARN_Format * * @param webhookName - Identifier for the webhookName. * @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account. * @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region. * @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition. * * Possible conditions: * - .ifAwsResourceTag() */ onWebhook(webhookName: string, account?: string, region?: string, partition?: string): this; /** * Filters actions based on the presence of tag key-value pairs in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag * * Applies to actions: * - .toCreateCustomActionType() * - .toCreatePipeline() * - .toPutWebhook() * - .toTagResource() * * @param tagKey The tag key to check * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifAwsRequestTag(tagKey: string, value: string | string[], operator?: Operator | string): this; /** * Filters actions based on tag key-value pairs attached to the resource * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag * * Applies to resource types: * - action * - actiontype * - pipeline * - stage * - webhook * * @param tagKey The tag key to check * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifAwsResourceTag(tagKey: string, value: string | string[], operator?: Operator | string): this; /** * Filters actions based on the presence of tag keys in the request * * https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys * * Applies to actions: * - .toCreateCustomActionType() * - .toCreatePipeline() * - .toPutWebhook() * - .toTagResource() * - .toUntagResource() * * @param value The value(s) to check * @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike` */ ifAwsTagKeys(value: string | string[], operator?: Operator | string): this; }