Pipe Dream
Pipe Dream provides a DSL to make it easy create a CodePipeline pipeline.
Pipe Dream installs pipedream
and pipe
executables. Both of them do the same thing, pipe
is just shorter to type.
The documentation site is at: pipedream.run
Quick Start
pipe init
pipe deploy
pipe start
pipe delete
Init and Structure
First, run pipe init
to generate a starter .pipedream
folder structure.
$ tree .pipedream
.pipedream
├── pipeline.rb
└── schedule.rb
File | Description |
---|---|
pipeline.rb | The CodePipeline pipeline written as a DSL. This is required. Here are the Pipeline DSL docs |
schedule.rb | A CloudWatch scheduled event written as a DSL. Here are the Schedule DSL docs |
DSL
.pipedream/pipeline.rb:
stage "Source" do
github(
source: "tongueroo/demo-ufo",
auth_token: ssm("/github/user/token")
)
end
stage "DeployStacks" do
codebuild "demo1" # action declaration
codebuild "demo2", "demo3" # will run in parallel
codebuild "demo4" # action declaration
end
More DSL docs
Installation
Add this line to your application's Gemfile:
gem "pipedream"
And then execute:
bundle
Or install it yourself as:
gem install pipedream
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am "Add some feature"
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request