Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposal for final CodePipeline Actions scheme: naming and code organization #424

Closed
wants to merge 4 commits into from
Closed

Proposal for final CodePipeline Actions scheme: naming and code organization #424

wants to merge 4 commits into from

Conversation

skinny85
Copy link
Contributor

This PR contains what will (hopefully) be the final iteration of the way we structure our CodePipeline Actions.

The scheme is the following:

  1. All Actions are in their dedicated modules, named after the service they represent integrations with (so, a CodeCommit Action lives in aws-codecommit-codepipeline, the 2 CodeBuild Actions live in aws-codebuild-codepipeline, etc.).
  2. The names of the Actions do not include the word 'Pipeline'. The reason for that is that we will expect (and promote it in our docs, examples and code) that customer will import them with the word 'pipeline' included in the namespace prefix they use.

Examples:

import codebuildPipeline = require('@aws-cdk/aws-codebuild-codepipeline');
import codecommitPipeline = require('@aws-cdk/aws-codecommit-codepipeline');

new codecommitPipeline.SourceAction(sourceStage, 'source', {
    // ...
});
new codebuildPipeline.BuildAction(buildStage, 'build', {
    // ...
});
  1. There is a new module, aws-codepipeline-aws-actions, that has all of the CodePipeline integrations packages (aws-codecommit-codepipeline, aws-codebuild-codepipeline, etc.) as dependencies. It re-exports all of the Action under the namespace of the integration service. This is in oder to aid in discoverability, and make it easier for customers to just get all of the integrations with one import.

Examples:

import codepipelineAwsActions = require('@aws-cdk/aws-codepipeline-aws-actions');

new codepipelineAwsActions.codecommit.SourceAction(sourceStage, 'Source', {
    // ...
});

new codepipelineAwsActions.codebuild.BuildAction(buildStage, 'Build', {
    // ...
});

Commits:

  • [BREAKING] Rename Lambda's PipelineInvokeAction to just InvokeAction.
  • [BREAKING] Rename CodeCommit's PipelineSource to SourceAction.
  • [BREAKING] Rename CodeBuild's PipelineBuildAction to simply BuildAction.
  • Introduce the 'aws-codepipeline-aws-actions' package.

By submitting this pull request, I confirm that my contribution is made under
the terms of the beta license.

@skinny85
Copy link
Contributor Author

Rebased after the merge of #412

@skinny85
Copy link
Contributor Author

Added LICENSE and NOTICE files to the new package.

@skinny85
Copy link
Contributor Author

Moved to #459 after fork problems when making the repo public.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contribution/core This is a PR that came from AWS.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants