Cody

A powerful DSL to create CodeBuild projects. Cody simplifies creating and managing AWS CodeBuild projects.

Learn More!

The Code

Easy to learn


Overview

cody init
cody deploy
cody start
cody delete

Structure

.cody
├── buildspec.yml
├── role.rb
├── project.rb
└── schedule.rb

Usage

cody deploy # infers the project name from the parent folder
cody deploy project-name # explicitly specify project name

cody start # infers the project name from the parent folder
cody start demo-project # looks up project via CodeBuild project name

cody deploy demo --type unit # different codebuild project types
cody start demo --type unit

project.rb

github_url("https://github.com/tongueroo/demo-ufo")
linux_image("aws/codebuild/ruby:2.5.3-1.7.0")
environment_variables(
  UFO_ENV: "development",
  API_KEY: "ssm:/codebuild/demo/api_key" # ssm param example
)

role.rb

iam_policy("logs", "ssm")

schedule.rb

rate "1 day"

Learn More

Quick Start