The bridge between
grunt
andaws-sdk
. This moudle allows you to call AWS APIs as grunt tasks.
This plugin requires Grunt ^0.4.5
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-aws-sdk --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-aws-sdk');
In your project's Gruntfile, add a section named aws
to the data object passed into grunt.initConfig()
.
The target
object consists of service
, method
and params
properties.
service
: the name of AWS service. e.g.) ec2
, s3
, dynamodb
method
: the function name of AWS SDK.
params
: the first argument that method
is called with.
(See also AWS SDK document)
grunt.initConfig({
aws: {
options: {
credentials: {
accessKeyId: 'Your Access Key ID',
secretAccessKey: 'Your Secret Access Key',
region: 'ap-northeast-1'
}
},
'launchEC2Instance': {
service: 'ec2',
method: 'runInstances',
params: {
ImageId: 'ami-3f32ac3e', // ubuntu 12.04.3 / 64bit
MinCount: 1,
MaxCount: 1,
KeyName: 'Your Key Pair Name',
SecurityGroupIds: ['Your Security Group ID'],
InstanceType: 't1.micro'
}
},
'setName': {
service: 'ec2',
method: 'createTags',
params: {
Resources: ['<%= aws.data.launchEC2Instance.Instances[0].InstanceId %>'],
Tags: [{
Key: 'Name',
Value: 'Your Instance Name'
}]
}
},
},
});
grunt.registerTask('launch', ['aws:launchEC2Instance', 'aws:setName']);
Type: Object
Default value: {}
An object value that is used to access to your AWS account.
You need to prepare Access Keys here.
Type: String
Default value: null
A directory path of target
response files.
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
(Nothing yet)