Blueprint Structure
A ERB blueprint structure can look like this:
demo
├── app
│ ├── definitions
│ │ │── base.rb
│ │ │── development.rb
│ │ └── production.rb
│ ├── helpers
│ ├── partials
│ ├── scripts
│ ├── templates
│ │ └── ec2.yml
│ └── user_data
├── demo.gemspec
├── Gemfile
├── .meta
│ └── config.yml
└── setup
└── configs.rb
Folders Overview
File / Directory | Description |
---|---|
app/definitions | Here’s where you define or declare your template definitions. It tells lono what templates to generate to the output folder. You can specify the template output name and the source template to use here. The templates are automatically layered together based on LONO_ENV . The template blocks are covered in more detail in templates configuration. |
app/helpers | Define your custom helpers here. The custom helpers are made available to erb/definitions , app/templates , and config/parameters . Helpers are covered in detail in custom helpers. |
app/partials | Where templates partials go. You can split up the CloudFormation templates into erb partials. Include them with the partial helper, covered in built-in helpers |
app/scripts | Where your custom scripts go. Scripts in this folder get uploaded to s3 as a tarball during the lono cfn deploy command. Details are in the App Scripts docs |
app/user_data | Where you place your scripts meant to be used for user-data. Include them in your templates with the user_data helper method. |
demo.gemspec | Where the gem specs and dependencies are defined. Blueprints make use of the gem structure to handle dependencies. |
seed/configs.rb | Where a setup script can be defined to work with lono seed . |
That hopefully gives you a basic idea of the blueprint directory structure.
Pro tip: Use the <- and -> arrow keys to move back and forward.
Edit this page
See a typo or an error? You can improve this page. This website is available on GitHub and contributions are encouraged and welcomed. We love pull requests from you!
- Suggest an edit to this page (here's the contributing guide).
- Open an issue about this page to report a problem.