Action aware syntax highlighting and snippets for AWS IAM Policies in the Atom IDE.
Features:
- Strict Syntax Highlighting - discover errors early with the IAM EBNF
- Block Snippets Autogenerate
Id
,Version
andStatement
- Action Snippets Never miss an action again across all 86 services e.g.:
logs:<tab>
autocompletes to all cloudwatch logs actionsxray:<tab>
autocompletes to all xray logs actions- Condition Snippets better scope your policies e.g.
IpAddress<tab>
IpAddressIfExists<tab>
- Autogenerated Grammars This grammar autoscales with AWS!
Generating Grammars
Because AWS Services and available actions change often, so too must our grammar. We autogenerate the grammar with the provided script
cd ./lib
bundle install
bundle exec generate-grammars.rb
Extracting The Service map
- The service map is extracted from the AWS Policy Generator which stores a javascript object of all service information in the policies.js file.
- This object can also be accessed from within the developer console of the policy generated via:
app.PolicyEditorConfig.serviceMap
Atom Grammar Development
- ⌘+⌥+p -- show current scope
- ⌘+⇧+p -> Window: Reload -- needed to reprocess your changes
apm link $SYNTAX_FOLDER
-- install a syntax repo into atom
Publishing Atom Package
apm publish patch|minor|major
Resources:
Thanks:
- The Atom Team and Lee Dohm for building great templates