codebuild 0.6.3 → 0.6.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/codebuild.gemspec +8 -3
- data/lib/codebuild/version.rb +1 -1
- data/vendor/aws_data/CHANGELOG.md +7 -0
- data/vendor/aws_data/Gemfile +4 -0
- data/{docs/LICENSE → vendor/aws_data/LICENSE.txt} +4 -4
- data/vendor/aws_data/README.md +42 -0
- data/vendor/aws_data/Rakefile +6 -0
- data/vendor/aws_data/aws_data.gemspec +30 -0
- data/vendor/aws_data/bin/console +14 -0
- data/vendor/aws_data/bin/setup +8 -0
- data/vendor/aws_data/lib/aws_data.rb +91 -0
- data/vendor/aws_data/lib/aws_data/version.rb +3 -0
- data/vendor/aws_data/spec/aws_data_spec.rb +5 -0
- data/vendor/aws_data/spec/spec_helper.rb +14 -0
- data/vendor/cfn-status/Gemfile +4 -0
- data/vendor/cfn-status/LICENSE.txt +21 -0
- data/vendor/cfn-status/README.md +56 -0
- data/vendor/cfn-status/Rakefile +6 -0
- data/vendor/cfn-status/bin/console +14 -0
- data/vendor/cfn-status/bin/setup +8 -0
- data/vendor/cfn-status/cfn-status.gemspec +30 -0
- data/vendor/cfn-status/lib/cfn/aws_service.rb +56 -0
- data/vendor/cfn-status/lib/cfn/status.rb +220 -0
- data/vendor/cfn-status/lib/cfn/status/version.rb +5 -0
- data/vendor/cfn-status/spec/cfn/status_spec.rb +81 -0
- data/vendor/cfn-status/spec/fixtures/cfn/stack-events-complete.json +1080 -0
- data/vendor/cfn-status/spec/fixtures/cfn/stack-events-in-progress.json +1080 -0
- data/vendor/cfn-status/spec/fixtures/cfn/stack-events-update-rollback-complete.json +1086 -0
- data/vendor/cfn-status/spec/spec_helper.rb +14 -0
- data/vendor/cfn_camelizer/CHANGELOG.md +10 -0
- data/vendor/cfn_camelizer/Gemfile +4 -0
- data/vendor/cfn_camelizer/LICENSE.txt +21 -0
- data/vendor/cfn_camelizer/README.md +40 -0
- data/vendor/cfn_camelizer/Rakefile +6 -0
- data/vendor/cfn_camelizer/bin/console +14 -0
- data/vendor/cfn_camelizer/bin/setup +8 -0
- data/vendor/cfn_camelizer/cfn_camelizer.gemspec +32 -0
- data/vendor/cfn_camelizer/lib/camelizer.yml +33 -0
- data/vendor/cfn_camelizer/lib/cfn_camelizer.rb +92 -0
- data/vendor/cfn_camelizer/lib/cfn_camelizer/version.rb +3 -0
- data/vendor/cfn_camelizer/spec/cfn_camelizer_spec.rb +79 -0
- data/vendor/cfn_camelizer/spec/spec_helper.rb +14 -0
- metadata +46 -173
- data/docs/.gitignore +0 -4
- data/docs/CNAME +0 -1
- data/docs/Gemfile +0 -3
- data/docs/README.md +0 -25
- data/docs/_config.yml +0 -73
- data/docs/_docs/contributing.md +0 -99
- data/docs/_docs/conventions.md +0 -51
- data/docs/_docs/deploy.md +0 -69
- data/docs/_docs/dsl.md +0 -12
- data/docs/_docs/dsl/project.md +0 -80
- data/docs/_docs/dsl/role.md +0 -79
- data/docs/_docs/dsl/schedule.md +0 -29
- data/docs/_docs/examples.md +0 -12
- data/docs/_docs/examples/ecs.md +0 -107
- data/docs/_docs/examples/jets.md +0 -79
- data/docs/_docs/examples/ruby.md +0 -44
- data/docs/_docs/github_oauth.md +0 -51
- data/docs/_docs/install.md +0 -14
- data/docs/_docs/next-steps.md +0 -16
- data/docs/_docs/settings.md +0 -34
- data/docs/_docs/start.md +0 -51
- data/docs/_docs/type-option.md +0 -72
- data/docs/_docs/variables.md +0 -117
- data/docs/_includes/commands.html +0 -88
- data/docs/_includes/content.html +0 -25
- data/docs/_includes/edit-on-github.html +0 -9
- data/docs/_includes/examples-steps.md +0 -17
- data/docs/_includes/footer.html +0 -41
- data/docs/_includes/google_analytics.html +0 -10
- data/docs/_includes/head.html +0 -45
- data/docs/_includes/js.html +0 -15
- data/docs/_includes/nav.html +0 -17
- data/docs/_includes/prev_next.md +0 -19
- data/docs/_includes/reference.md +0 -1
- data/docs/_includes/subnav.html +0 -38
- data/docs/_includes/tutorials.md +0 -38
- data/docs/_layouts/default.html +0 -12
- data/docs/_reference/cb-completion.md +0 -44
- data/docs/_reference/cb-completion_script.md +0 -25
- data/docs/_reference/cb-delete.md +0 -26
- data/docs/_reference/cb-deploy.md +0 -58
- data/docs/_reference/cb-init.md +0 -88
- data/docs/_reference/cb-start.md +0 -43
- data/docs/_reference/cb-version.md +0 -21
- data/docs/_sass/_bootstrap-overrides.scss +0 -40
- data/docs/_sass/_contact.scss +0 -49
- data/docs/_sass/_cta.scss +0 -37
- data/docs/_sass/_download.scss +0 -31
- data/docs/_sass/_features.scss +0 -47
- data/docs/_sass/_footer.scss +0 -49
- data/docs/_sass/_global.scss +0 -102
- data/docs/_sass/_main.scss +0 -364
- data/docs/_sass/_masthead.scss +0 -70
- data/docs/_sass/_mixins.scss +0 -79
- data/docs/_sass/_navbar.scss +0 -92
- data/docs/_sass/_syntax.scss +0 -65
- data/docs/_sass/_table.scss +0 -34
- data/docs/_sass/_timeline.scss +0 -207
- data/docs/_sass/_variables.scss +0 -24
- data/docs/bin/web +0 -8
- data/docs/docs.md +0 -22
- data/docs/img/docs/codebuild-output.png +0 -0
- data/docs/img/logos/boltops-logo-full.png +0 -0
- data/docs/img/logos/boltops-logo.png +0 -0
- data/docs/img/logos/project-logo.png +0 -0
- data/docs/index.html +0 -35
- data/docs/js/nav.js +0 -39
- data/docs/js/new-age.js +0 -38
- data/docs/js/new-age.min.js +0 -6
- data/docs/new-age.scss +0 -20
- data/docs/quick-start.md +0 -72
- data/docs/reference.md +0 -12
- data/docs/support.md +0 -22
- data/docs/vendor/bootstrap/css/bootstrap-grid.css +0 -1339
- data/docs/vendor/bootstrap/css/bootstrap-grid.css.map +0 -1
- data/docs/vendor/bootstrap/css/bootstrap-grid.min.css +0 -1
- data/docs/vendor/bootstrap/css/bootstrap-grid.min.css.map +0 -1
- data/docs/vendor/bootstrap/css/bootstrap-reboot.css +0 -459
- data/docs/vendor/bootstrap/css/bootstrap-reboot.css.map +0 -1
- data/docs/vendor/bootstrap/css/bootstrap-reboot.min.css +0 -1
- data/docs/vendor/bootstrap/css/bootstrap-reboot.min.css.map +0 -1
- data/docs/vendor/bootstrap/css/bootstrap.css +0 -9320
- data/docs/vendor/bootstrap/css/bootstrap.css.map +0 -1
- data/docs/vendor/bootstrap/css/bootstrap.min.css +0 -6
- data/docs/vendor/bootstrap/css/bootstrap.min.css.map +0 -1
- data/docs/vendor/bootstrap/js/bootstrap.js +0 -3535
- data/docs/vendor/bootstrap/js/bootstrap.min.js +0 -7
- data/docs/vendor/font-awesome/css/font-awesome.css +0 -2337
- data/docs/vendor/font-awesome/css/font-awesome.min.css +0 -4
- data/docs/vendor/font-awesome/fonts/FontAwesome.otf +0 -0
- data/docs/vendor/font-awesome/fonts/fontawesome-webfont.eot +0 -0
- data/docs/vendor/font-awesome/fonts/fontawesome-webfont.svg +0 -2671
- data/docs/vendor/font-awesome/fonts/fontawesome-webfont.ttf +0 -0
- data/docs/vendor/font-awesome/fonts/fontawesome-webfont.woff +0 -0
- data/docs/vendor/font-awesome/fonts/fontawesome-webfont.woff2 +0 -0
- data/docs/vendor/font-awesome/less/animated.less +0 -34
- data/docs/vendor/font-awesome/less/bordered-pulled.less +0 -25
- data/docs/vendor/font-awesome/less/core.less +0 -12
- data/docs/vendor/font-awesome/less/fixed-width.less +0 -6
- data/docs/vendor/font-awesome/less/font-awesome.less +0 -18
- data/docs/vendor/font-awesome/less/icons.less +0 -789
- data/docs/vendor/font-awesome/less/larger.less +0 -13
- data/docs/vendor/font-awesome/less/list.less +0 -19
- data/docs/vendor/font-awesome/less/mixins.less +0 -60
- data/docs/vendor/font-awesome/less/path.less +0 -15
- data/docs/vendor/font-awesome/less/rotated-flipped.less +0 -20
- data/docs/vendor/font-awesome/less/screen-reader.less +0 -5
- data/docs/vendor/font-awesome/less/stacked.less +0 -20
- data/docs/vendor/font-awesome/less/variables.less +0 -799
- data/docs/vendor/font-awesome/scss/_animated.scss +0 -34
- data/docs/vendor/font-awesome/scss/_bordered-pulled.scss +0 -25
- data/docs/vendor/font-awesome/scss/_core.scss +0 -12
- data/docs/vendor/font-awesome/scss/_fixed-width.scss +0 -6
- data/docs/vendor/font-awesome/scss/_icons.scss +0 -789
- data/docs/vendor/font-awesome/scss/_larger.scss +0 -13
- data/docs/vendor/font-awesome/scss/_list.scss +0 -19
- data/docs/vendor/font-awesome/scss/_mixins.scss +0 -60
- data/docs/vendor/font-awesome/scss/_path.scss +0 -15
- data/docs/vendor/font-awesome/scss/_rotated-flipped.scss +0 -20
- data/docs/vendor/font-awesome/scss/_screen-reader.scss +0 -5
- data/docs/vendor/font-awesome/scss/_stacked.scss +0 -20
- data/docs/vendor/font-awesome/scss/_variables.scss +0 -799
- data/docs/vendor/font-awesome/scss/font-awesome.scss +0 -18
- data/docs/vendor/jquery-easing/jquery.easing.compatibility.js +0 -59
- data/docs/vendor/jquery-easing/jquery.easing.js +0 -166
- data/docs/vendor/jquery-easing/jquery.easing.min.js +0 -1
- data/docs/vendor/jquery/jquery.js +0 -10253
- data/docs/vendor/jquery/jquery.min.js +0 -4
- data/docs/vendor/simple-line-icons/css/simple-line-icons.css +0 -778
- data/docs/vendor/simple-line-icons/fonts/Simple-Line-Icons.eot +0 -0
- data/docs/vendor/simple-line-icons/fonts/Simple-Line-Icons.svg +0 -200
- data/docs/vendor/simple-line-icons/fonts/Simple-Line-Icons.ttf +0 -0
- data/docs/vendor/simple-line-icons/fonts/Simple-Line-Icons.woff +0 -0
- data/docs/vendor/simple-line-icons/fonts/Simple-Line-Icons.woff2 +0 -0
- data/docs/vendor/simple-line-icons/less/simple-line-icons.less +0 -982
- data/docs/vendor/simple-line-icons/scss/simple-line-icons.scss +0 -979
- data/docs/vendor/tether/tether.js +0 -1811
- data/docs/vendor/tether/tether.min.js +0 -1
- data/spec/fixtures/app/.codebuild/project.rb +0 -2
- data/spec/fixtures/app/.codebuild/role.rb +0 -1
- data/spec/fixtures/app/.codebuild/schedule.rb +0 -1
- data/spec/fixtures/app/.codebuild/settings.yml +0 -13
- data/spec/lib/cli_spec.rb +0 -13
- data/spec/lib/project_spec.rb +0 -12
- data/spec/lib/role_spec.rb +0 -12
- data/spec/lib/schedule_spec.rb +0 -12
- data/spec/spec_helper.rb +0 -35
data/docs/.gitignore
DELETED
data/docs/CNAME
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
codebuild.cloud
|
data/docs/Gemfile
DELETED
data/docs/README.md
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
# Codebuild Documentation
|
2
|
-
|
3
|
-
This project powers the codebuild documementation website: [https://codebuild.cloud](https://codebuild.cloud). It is a static website generated by [Jekyll](https://jekyllrb.com/).
|
4
|
-
|
5
|
-
## Contributing
|
6
|
-
|
7
|
-
For minor changes like typos, you can click **Suggest an edit to this page**, located at the bottom of each article. This will take you to the source file on GitHub, where you can submit a pull request for your change through the UI.
|
8
|
-
|
9
|
-
## Local Setup
|
10
|
-
|
11
|
-
For larger fixes, you can run the site locally with the following:
|
12
|
-
|
13
|
-
git clone https://github.com/tongueroo/codebuild.git
|
14
|
-
cd codebuild/docs
|
15
|
-
bundle
|
16
|
-
bin/web
|
17
|
-
|
18
|
-
You'll be able to view the site on [http://localhost:4000](http://localhost:4000).
|
19
|
-
|
20
|
-
## Rordering Site Nav
|
21
|
-
|
22
|
-
To reorder the `nav_order` for links on the sidenav run:
|
23
|
-
|
24
|
-
cd docs
|
25
|
-
jekyll-sort reorder
|
data/docs/_config.yml
DELETED
@@ -1,73 +0,0 @@
|
|
1
|
-
# Site settings
|
2
|
-
title: codebuild
|
3
|
-
email: tongueroo@gmail.com
|
4
|
-
url: https://codebuild.cloud
|
5
|
-
description: "The codebuild tool provides a DSL to create a CodeBuild project with some reasonable defaults."
|
6
|
-
keywords: "codebuild boltops dsl ruby aws"
|
7
|
-
skills: ""
|
8
|
-
meta_author: Tung Nguyen
|
9
|
-
|
10
|
-
# Google webmaster tools
|
11
|
-
google_verify:
|
12
|
-
google_analytics: UA-98684555-11
|
13
|
-
|
14
|
-
# https://ssl.bing.com/webmaster/configure/verify/ownership Option 2 content= goes here
|
15
|
-
bing_verify:
|
16
|
-
|
17
|
-
# Contact form:
|
18
|
-
# - static : pass through formspree.io to validate email sending
|
19
|
-
# - disqus : replace contact form by disqus thread
|
20
|
-
# - comment the line below if you want to stick with the default PHP contact form
|
21
|
-
contact: static
|
22
|
-
|
23
|
-
# If you use disqus you need disqus shortname
|
24
|
-
# https://help.disqus.com/customer/portal/articles/466208
|
25
|
-
disqus_shortname:
|
26
|
-
|
27
|
-
# Color settings (hex-codes without the leading hash-tag)
|
28
|
-
color:
|
29
|
-
primary: 3972c7
|
30
|
-
primary-rgb: "24,288,156" #"128,179,255"
|
31
|
-
secondary: 2c3e50 #FD6E8A
|
32
|
-
secondary-dark: 233140 #A2122F
|
33
|
-
links: a3c8ff
|
34
|
-
|
35
|
-
# Footer settings
|
36
|
-
footer:
|
37
|
-
copyright: BoltOps, LLC
|
38
|
-
location: San Francisco, CA
|
39
|
-
social: BoltOps
|
40
|
-
credits:
|
41
|
-
contact: contact@boltops.com
|
42
|
-
phone:
|
43
|
-
|
44
|
-
# Social networks usernames (many more available: google-plus, flickr, dribbble, pinterest, instagram, tumblr, linkedin, etc.)
|
45
|
-
social:
|
46
|
-
- title: twitter
|
47
|
-
url: http://twitter.com/tongueroo
|
48
|
-
- title: github
|
49
|
-
url: https://github.com/tongueroo/codebuild
|
50
|
-
|
51
|
-
# Credits content
|
52
|
-
credits:
|
53
|
-
|
54
|
-
# Build settings
|
55
|
-
markdown: kramdown
|
56
|
-
permalink: pretty
|
57
|
-
|
58
|
-
gh_url: https://github.com/tongueroo/codebuild
|
59
|
-
|
60
|
-
collections:
|
61
|
-
docs:
|
62
|
-
name: "Documentation"
|
63
|
-
output: true
|
64
|
-
reference:
|
65
|
-
name: "Reference"
|
66
|
-
output: true
|
67
|
-
|
68
|
-
defaults:
|
69
|
-
- values:
|
70
|
-
layout: default
|
71
|
-
|
72
|
-
plugins_dir:
|
73
|
-
- jekyll-coffeescript
|
data/docs/_docs/contributing.md
DELETED
@@ -1,99 +0,0 @@
|
|
1
|
-
---
|
2
|
-
title: Contributing
|
3
|
-
---
|
4
|
-
|
5
|
-
Hi there! Interested in contributing to CodeBuild? We'd love your help. CodeBuild is an open source project, built one contribution at a time by users like you.
|
6
|
-
|
7
|
-
## Where to get help or report a problem
|
8
|
-
|
9
|
-
See [the support guidelines]({% link support.md %})
|
10
|
-
|
11
|
-
## Ways to contribute
|
12
|
-
|
13
|
-
Whether you're a developer, an infrastructure engineer, or just an enthusiast, there are lots of ways to contribute. Here are a few ideas:
|
14
|
-
|
15
|
-
* [Install CodeBuild on your computer](https://https://codebuild.cloud.com/docs/install/) and kick the tires. Does it work? Does it do what you'd expect? If not, [open an issue](https://github.com/tongueroo/codebuild/issues/new/choose) and let us know.
|
16
|
-
* Comment on some of the project's [open issues](https://github.com/tongueroo/codebuild/issues). Have you experienced the same problem? Know a workaround? Do you have a suggestion for how the feature could be better?
|
17
|
-
* Read through [the documentation](https://https://codebuild.cloud.com/docs/), and click the "improve this page" button, any time you see something confusing or have a suggestion for something that could be improved.
|
18
|
-
* Browse through the [CodeBuild Community forum](https://community.https://codebuild.cloud.com), and lend a hand answering questions. There's a good chance you've already experienced what another user is experiencing.
|
19
|
-
* Find [an open issue](https://github.com/tongueroo/codebuild/issues) (especially [those labeled `help wanted`](https://github.com/tongueroo/codebuild/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22)), and submit a proposed fix. If it's your first pull request, we promise we won't bite and are glad to answer any questions.
|
20
|
-
* Help evaluate [open pull requests](https://github.com/tongueroo/codebuild/pulls), by testing the changes locally and reviewing what's proposed.
|
21
|
-
|
22
|
-
## Submitting a pull request
|
23
|
-
|
24
|
-
### Pull requests generally
|
25
|
-
|
26
|
-
* The smaller the proposed change, the better. If you'd like to propose two unrelated changes, submit two pull requests.
|
27
|
-
|
28
|
-
* The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users.
|
29
|
-
|
30
|
-
* If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/).
|
31
|
-
|
32
|
-
* If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below.
|
33
|
-
|
34
|
-
### Submitting a pull request via github.com
|
35
|
-
|
36
|
-
Many small changes can be made entirely through the github.com web interface.
|
37
|
-
|
38
|
-
1. Navigate to the file within [tongueroo/codebuild](https://github.com/tongueroo/codebuild) that you'd like to edit.
|
39
|
-
2. Click the pencil icon in the top right corner to edit the file.
|
40
|
-
3. Make your proposed changes.
|
41
|
-
4. Click "Propose file change."
|
42
|
-
5. Click "Create pull request."
|
43
|
-
6. Add a descriptive title and detailed description for your proposed change. The more information, the better.
|
44
|
-
7. Click "Create pull request."
|
45
|
-
|
46
|
-
That's it! You'll be automatically subscribed to receive updates as others review your proposed change and provide feedback.
|
47
|
-
|
48
|
-
### Submitting a pull request via Git command line
|
49
|
-
|
50
|
-
1. Fork the project by clicking "Fork" in the top right corner of [tongueroo/codebuild](https://github.com/tongueroo/codebuild).
|
51
|
-
2. Clone the repository locally `git clone https://github.com/<your-username>/codebuild`.
|
52
|
-
3. Fetch submodules `git submodule init && git submodule update`.
|
53
|
-
4. Create a new, descriptively named branch to contain your change ( `git checkout -b my-awesome-feature` ).
|
54
|
-
5. Hack away, add tests. Not necessarily in that order.
|
55
|
-
6. Make sure everything still passes by running `bundle exec rspec` (see [the tests section](#running-tests-locally) below)
|
56
|
-
7. Push the branch up ( `git push origin my-awesome-feature` ).
|
57
|
-
8. Create a pull request by visiting `https://github.com/<your-username>/codebuild` and following the instructions at the top of the screen.
|
58
|
-
|
59
|
-
## Proposing updates to the documentation
|
60
|
-
|
61
|
-
We want the CodeBuild documentation to be the best it can be. We've open-sourced our docs and we welcome any pull requests if you find it lacking.
|
62
|
-
|
63
|
-
### How to submit changes
|
64
|
-
|
65
|
-
You can find the documentation for [https://codebuild.cloud.com](http://https://codebuild.cloud.com) in the [docs](https://github.com/tongueroo/codebuild/tree/master/docs) directory. See the section above, [submitting a pull request](#submitting-a-pull-request) for information on how to propose a change.
|
66
|
-
|
67
|
-
One gotcha, all pull requests should be directed at the `master` branch (the default branch).
|
68
|
-
|
69
|
-
## Code Contributions
|
70
|
-
|
71
|
-
Interesting in submitting a pull request? Awesome. Read on. There are a few common gotchas that we'd love to help you avoid.
|
72
|
-
|
73
|
-
### Tests and documentation
|
74
|
-
|
75
|
-
Any time you propose a code change, you should also include updates to the documentation and tests within the same pull request.
|
76
|
-
|
77
|
-
#### Documentation
|
78
|
-
|
79
|
-
If your contribution changes any CodeBuild behavior, make sure to update the documentation. Documentation lives in the `docs` folder. It's a Jekyll site and can be started with `cd docs && bin/web`. If the docs are missing information, please feel free to add it in. Great docs make a great project. Include changes to the documentation within your pull request, and once merged, `https://codebuild.cloud.com` will be updated.
|
80
|
-
|
81
|
-
#### Tests
|
82
|
-
|
83
|
-
* If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `specs` folder.
|
84
|
-
|
85
|
-
### Code contributions generally
|
86
|
-
|
87
|
-
* Don't bump the Gem version in your pull request (if you don't know what that means, you probably didn't).
|
88
|
-
|
89
|
-
## Running tests
|
90
|
-
|
91
|
-
### Test Dependencies
|
92
|
-
|
93
|
-
To run the test suite by running the following command:
|
94
|
-
|
95
|
-
bundle exec rspec
|
96
|
-
|
97
|
-
## Thank You
|
98
|
-
|
99
|
-
Thanks! Hacking on CodeBuild should be fun. If you find any of this hard to figure out, let us know so we can improve our process or documentation!
|
data/docs/_docs/conventions.md
DELETED
@@ -1,51 +0,0 @@
|
|
1
|
-
---
|
2
|
-
title: Naming Conventions
|
3
|
-
nav_order: 9
|
4
|
-
---
|
5
|
-
|
6
|
-
The codebuild tool follows a few naming conventions.
|
7
|
-
|
8
|
-
## Project Name
|
9
|
-
|
10
|
-
It will set the codebuild project name by inferring the name of the parent folder. For example, if the parent folder is `demo`.
|
11
|
-
|
12
|
-
cd demo
|
13
|
-
cb deploy
|
14
|
-
|
15
|
-
The CodeBuild project is named `demo`. You can override this easily by providing a project name.
|
16
|
-
|
17
|
-
cd deploy my-project # explicitly use my-project as CodeBuild project name
|
18
|
-
|
19
|
-
The CodeBuild project is named `my-project`
|
20
|
-
|
21
|
-
## Type Option
|
22
|
-
|
23
|
-
If the `--type` option is used, then it is appended to the CodeBuild project name. For example:
|
24
|
-
|
25
|
-
cb deploy my-project --type unit
|
26
|
-
|
27
|
-
The CodeBuild project is named `my-project-unit`.
|
28
|
-
|
29
|
-
## CB_ENV_EXTRA
|
30
|
-
|
31
|
-
The `CB_ENV_EXTRA` also affects the name of the CodeBuild project. It gets appended after the type option.
|
32
|
-
|
33
|
-
CB_ENV_EXTRA=2 cb deploy my-project --type unit
|
34
|
-
|
35
|
-
The CodeBuild project is named `my-project-unit-2`.
|
36
|
-
|
37
|
-
## Settings append_env option
|
38
|
-
|
39
|
-
If the append_env is configured in the [Settings]({% link _docs/settings.md %}).
|
40
|
-
|
41
|
-
## Stack Name
|
42
|
-
|
43
|
-
The CloudFormation stack name which creates the CodeBuild related resources is named the same as the project name with `-cb` appended to the stack name. Examples:
|
44
|
-
|
45
|
-
CodeBuild Project Name | Stack Name
|
46
|
-
--- | ---
|
47
|
-
demo | demo-cb
|
48
|
-
demo-unit | demo-unit-cb
|
49
|
-
demo-web-unit | demo-web-unit-cb
|
50
|
-
|
51
|
-
{% include prev_next.md %}
|
data/docs/_docs/deploy.md
DELETED
@@ -1,69 +0,0 @@
|
|
1
|
-
---
|
2
|
-
title: Deploy
|
3
|
-
nav_order: 6
|
4
|
-
---
|
5
|
-
|
6
|
-
The CodeBuild project is generated from the DSL and created with CloudFormation. By default, the files that the DSL evaluates are:
|
7
|
-
|
8
|
-
.codebuild/buildspec.yml
|
9
|
-
.codebuild/project.rb
|
10
|
-
.codebuild/role.rb
|
11
|
-
|
12
|
-
To create the CodeBuild project, you run:
|
13
|
-
|
14
|
-
codebuild deploy
|
15
|
-
|
16
|
-
You'll see output that looks something like this:
|
17
|
-
|
18
|
-
$ cb deploy
|
19
|
-
Generated CloudFormation template at /tmp/codebuild.yml
|
20
|
-
Deploying stack demo-cb with CodeBuild project demo
|
21
|
-
Creating stack demo-cb. Check CloudFormation console for status.
|
22
|
-
Stack name demo-cb status CREATE_IN_PROGRESS
|
23
|
-
Here's the CloudFormation url to check for more details https://console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks
|
24
|
-
Waiting for stack to complete
|
25
|
-
03:04:30AM CREATE_IN_PROGRESS AWS::CloudFormation::Stack demo-cb User Initiated
|
26
|
-
03:04:34AM CREATE_IN_PROGRESS AWS::IAM::Role IamRole
|
27
|
-
03:04:35AM CREATE_IN_PROGRESS AWS::IAM::Role IamRole Resource creation Initiated
|
28
|
-
03:04:54AM CREATE_COMPLETE AWS::IAM::Role IamRole
|
29
|
-
03:04:56AM CREATE_IN_PROGRESS AWS::CodeBuild::Project CodeBuild
|
30
|
-
03:04:58AM CREATE_IN_PROGRESS AWS::CodeBuild::Project CodeBuild Resource creation Initiated
|
31
|
-
03:04:59AM CREATE_COMPLETE AWS::CodeBuild::Project CodeBuild
|
32
|
-
03:05:01AM CREATE_COMPLETE AWS::CloudFormation::Stack demo-cb
|
33
|
-
Stack success status: CREATE_COMPLETE
|
34
|
-
Time took for stack deployment: 30s.
|
35
|
-
$
|
36
|
-
|
37
|
-
## Explicit CodeBuild Project Name
|
38
|
-
|
39
|
-
By default, the CodeBuild project name is inferred and is the parent folder that you are within. You can explicitly specify the project name as the first CLI argument:
|
40
|
-
|
41
|
-
cb deploy my-project
|
42
|
-
|
43
|
-
## Types
|
44
|
-
|
45
|
-
By default, the codebuild tool looks up files in the `.codebuild` folder. Example:
|
46
|
-
|
47
|
-
.codebuild/buildspec.yml
|
48
|
-
.codebuild/project.rb
|
49
|
-
.codebuild/role.rb
|
50
|
-
|
51
|
-
You can use the `--type` option to tell the tool to lookup files in a subfolder. Here's an example.
|
52
|
-
|
53
|
-
cb deploy PROJECT_NAME --type deploy
|
54
|
-
|
55
|
-
This will look up `buildspec.yml`, `project.rb`, and `role.rb` files in the `.codebuild/deploy` folder. So:
|
56
|
-
|
57
|
-
.codebuild/deploy/buildspec.yml
|
58
|
-
.codebuild/deploy/project.rb
|
59
|
-
.codebuild/deploy/role.rb
|
60
|
-
|
61
|
-
Likewise `cb deploy PROJECT_NAME --type unit` would result in:
|
62
|
-
|
63
|
-
.codebuild/unit/buildspec.yml
|
64
|
-
.codebuild/unit/project.rb
|
65
|
-
.codebuild/unit/role.rb
|
66
|
-
|
67
|
-
Also, for help info you can check the [cb deploy]({% link _reference/cb-deploy.md %}) CLI reference.
|
68
|
-
|
69
|
-
{% include prev_next.md %}
|
data/docs/_docs/dsl.md
DELETED
@@ -1,12 +0,0 @@
|
|
1
|
-
---
|
2
|
-
title: CodeBuild DSL
|
3
|
-
nav_order: 11
|
4
|
-
---
|
5
|
-
|
6
|
-
CodeBuild provides a simple yet powerful DSL to create CodeBuild related resources. Here are some examples of resources it can create:
|
7
|
-
|
8
|
-
* [project]({% link _docs/dsl/project.md %}): The CodeBuild project. This is required.
|
9
|
-
* [iam role]({% link _docs/dsl/role.md %}): The IAM role associated with the CodeBuild project.
|
10
|
-
* [schedule]({% link _docs/dsl/schedule.md %}): An CloudWatch Event rule. The rule triggers the codebuild project to start on a scheduled basis.
|
11
|
-
|
12
|
-
{% include prev_next.md %}
|
data/docs/_docs/dsl/project.md
DELETED
@@ -1,80 +0,0 @@
|
|
1
|
-
---
|
2
|
-
title: Project DSL
|
3
|
-
nav_text: Project
|
4
|
-
categories: dsl
|
5
|
-
nav_order: 12
|
6
|
-
---
|
7
|
-
|
8
|
-
You define the CodeBuild project in `.codebuild/project.rb`. Here's an example of the DSL used to create a codebuild project.
|
9
|
-
|
10
|
-
.codebuild/project.rb:
|
11
|
-
|
12
|
-
```ruby
|
13
|
-
# name("demo") # recommended to leave unset and use the conventional name that cb tool sets
|
14
|
-
github_url("https://github.com/tongueroo/demo-ufo")
|
15
|
-
linux_image("aws/codebuild/ruby:2.5.3-1.7.0")
|
16
|
-
environment_variables(
|
17
|
-
UFO_ENV: "development",
|
18
|
-
API_KEY: "ssm:/codebuild/demo/api_key" # ssm param example
|
19
|
-
)
|
20
|
-
```
|
21
|
-
|
22
|
-
Here's a list of some of the convenience shorthand DSL methods:
|
23
|
-
|
24
|
-
* github_url(url)
|
25
|
-
* github_source(options={})
|
26
|
-
* linux_image(name)
|
27
|
-
* linux_environment(options={})
|
28
|
-
* environment_variables(vars)
|
29
|
-
* local_cache(enable=true)
|
30
|
-
|
31
|
-
Refer to the [dsl/project.rb](https://github.com/tongueroo/codebuild/blob/master/lib/codebuild/dsl/project.rb) source code for the most updated list of methods.
|
32
|
-
|
33
|
-
## Full DSL
|
34
|
-
|
35
|
-
The convenience methods are shorter and cleaner. However, you have access to a Full DSL if needed. The Full DSL methods are merely the properties of the [AWS::CodeBuild::Project CloudFormation Resource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html). Here's an example.
|
36
|
-
|
37
|
-
.codebuild/project.rb:
|
38
|
-
|
39
|
-
```ruby
|
40
|
-
# name("demo") # recommend to not set, and let the codebuild tool set this automatically
|
41
|
-
description("desc2")
|
42
|
-
# https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html
|
43
|
-
source(
|
44
|
-
type: "GITHUB",
|
45
|
-
location: "https://github.com/tongueroo/demo-ufo",
|
46
|
-
git_clone_depth: 1,
|
47
|
-
git_submodules_config: { fetch_submodules: true },
|
48
|
-
build_spec: ".codebuild/buildspec.yml",
|
49
|
-
auth: {
|
50
|
-
type: "OAUTH",
|
51
|
-
resource: ssm("/codebuild/demo/oauth_token"),
|
52
|
-
},
|
53
|
-
report_build_status: true,
|
54
|
-
)
|
55
|
-
|
56
|
-
artifacts(type: "NO_ARTIFACTS")
|
57
|
-
environment(
|
58
|
-
compute_type: "BUILD_GENERAL1_SMALL",
|
59
|
-
image_pull_credentials_type: "CODEBUILD",
|
60
|
-
privileged_mode: true,
|
61
|
-
image: "aws/codebuild/ruby:2.5.3-1.7.0",
|
62
|
-
environment_variables: [
|
63
|
-
{
|
64
|
-
type: "PLAINTEXT",
|
65
|
-
name: "UFO_ENV",
|
66
|
-
value: "development"
|
67
|
-
},
|
68
|
-
{
|
69
|
-
type: "PARAMETER_STORE",
|
70
|
-
name: "API_KEY",
|
71
|
-
value: "/codebuild/demo/api_key"
|
72
|
-
}
|
73
|
-
],
|
74
|
-
type: "LINUX_CONTAINER"
|
75
|
-
)
|
76
|
-
|
77
|
-
service_role(ref: "IamRole")
|
78
|
-
```
|
79
|
-
|
80
|
-
{% include prev_next.md %}
|
data/docs/_docs/dsl/role.md
DELETED
@@ -1,79 +0,0 @@
|
|
1
|
-
---
|
2
|
-
title: Role DSL
|
3
|
-
nav_text: Role
|
4
|
-
categories: dsl
|
5
|
-
nav_order: 13
|
6
|
-
---
|
7
|
-
|
8
|
-
The codebuild tool can create the IAM service role associated with the codebuild project. Here's an example:
|
9
|
-
|
10
|
-
.codebuild/role.rb:
|
11
|
-
|
12
|
-
```ruby
|
13
|
-
iam_policy("logs", "ssm")
|
14
|
-
```
|
15
|
-
|
16
|
-
For more control, here's a longer form:
|
17
|
-
|
18
|
-
```ruby
|
19
|
-
iam_policy(
|
20
|
-
action: [
|
21
|
-
"logs:CreateLogGroup",
|
22
|
-
"logs:CreateLogStream",
|
23
|
-
"logs:PutLogEvents",
|
24
|
-
"ssm:*",
|
25
|
-
],
|
26
|
-
effect: "Allow",
|
27
|
-
resource: "*"
|
28
|
-
)
|
29
|
-
```
|
30
|
-
|
31
|
-
You can also create managed IAM policy.
|
32
|
-
|
33
|
-
```ruby
|
34
|
-
managed_iam_policy("AmazonS3ReadOnlyAccess")
|
35
|
-
```
|
36
|
-
|
37
|
-
You can also add multiple managed IAM policies:
|
38
|
-
|
39
|
-
```ruby
|
40
|
-
managed_iam_policy("AmazonS3ReadOnlyAccess", "AmazonEC2ReadOnlyAccess")
|
41
|
-
```
|
42
|
-
|
43
|
-
## Full DSL
|
44
|
-
|
45
|
-
The convenience methods merely wrap properties of the [AWS::IAM::Role
|
46
|
-
CloudFormation Resource](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html). If you wanted to set the CloudFormation properties more directly, here's an example of using the "Full" DSL.
|
47
|
-
|
48
|
-
.codebuild/role.rb:
|
49
|
-
|
50
|
-
```ruby
|
51
|
-
assume_role_policy_document(
|
52
|
-
statement: [{
|
53
|
-
action: ["sts:AssumeRole"],
|
54
|
-
effect: "Allow",
|
55
|
-
principal: {
|
56
|
-
service: ["codebuild.amazonaws.com"]
|
57
|
-
}
|
58
|
-
}],
|
59
|
-
version: "2012-10-17"
|
60
|
-
)
|
61
|
-
path("/")
|
62
|
-
policies([{
|
63
|
-
policy_name: "CodeBuildAccess",
|
64
|
-
policy_document: {
|
65
|
-
version: "2012-10-17",
|
66
|
-
statement: [{
|
67
|
-
action: [
|
68
|
-
"logs:CreateLogGroup",
|
69
|
-
"logs:CreateLogStream",
|
70
|
-
"logs:PutLogEvents",
|
71
|
-
],
|
72
|
-
effect: "Allow",
|
73
|
-
resource: "*"
|
74
|
-
}]
|
75
|
-
}
|
76
|
-
}])
|
77
|
-
```
|
78
|
-
|
79
|
-
{% include prev_next.md %}
|