Skip to content

Commit 13eeb0d

Browse files
author
AWS Scripting Guy
committed
iam, kinesis, lambda complete snippets
1 parent 4ca6b4a commit 13eeb0d

File tree

1 file changed

+258
-0
lines changed

1 file changed

+258
-0
lines changed

snippets/yaml-snippets.json

Lines changed: 258 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,264 @@
242242
"description": "",
243243
"scope": "source.cloudformation"
244244
},
245+
"elb-listener": {
246+
"prefix": "elb-listener",
247+
"body": [
248+
"InstancePort: ${1}",
249+
"InstanceProtocol: ${2:HTTP|HTTPS|TCP|SSL}",
250+
"LoadBalancerPort: ${3}",
251+
"Protocol: ${4:HTTP|HTTPS|TCP|SSL}",
252+
"SSLCertificateId: ${5}"
253+
],
254+
"description": "",
255+
"scope": "source.cloudformation"
256+
},
257+
"iam-accesskey": {
258+
"prefix": "iam-accesskey",
259+
"body": [
260+
"${1:iamAccessKey:}",
261+
" Type: AWS::IAM::AccessKey",
262+
" Properties:",
263+
" Status: ${2}",
264+
" UserName: ${3}",
265+
" Serial: ${4}"
266+
],
267+
"description": "",
268+
"scope": "source.cloudformation"
269+
},
270+
"iam-group": {
271+
"prefix": "iam-group",
272+
"body": [
273+
"${1:iamGroup}:",
274+
" Type: AWS::IAM::Group",
275+
" Properties:",
276+
" Path: ${2}",
277+
" Policies:",
278+
" - ${policy}"
279+
],
280+
"description": "",
281+
"scope": "source.cloudformation"
282+
},
283+
"iam-instanceprofile": {
284+
"prefix": "iam-instanceprofile",
285+
"body": [
286+
"${1:iamInstanceProfile}:",
287+
" Type: AWS::IAM::InstanceProfile",
288+
" Properties:",
289+
" Path: ${2:/}",
290+
" Roles:",
291+
" - ${3:rolename}"
292+
],
293+
"description": "",
294+
"scope": "source.cloudformation"
295+
},
296+
"iam-policy": {
297+
"prefix": "iam-policy",
298+
"body": [
299+
"${1:iamPolicy}:",
300+
" Type: AWS::IAM::Policy",
301+
" Properties:",
302+
" PolicyName:${2}",
303+
" Groups:",
304+
" - ${3:group}",
305+
" Roles:",
306+
" - ${4:role}",
307+
" Users:",
308+
" - ${5:user}",
309+
" PolicyDocument: ${6: # policy document - can be JSON or YAML}",
310+
],
311+
"description": "",
312+
"scope": "source.cloudformation"
313+
},
314+
"iam-role": {
315+
"prefix": "iam-role",
316+
"body": [
317+
"${1:iamRole}:",
318+
" Type: AWS::IAM::Role",
319+
" Properties:",
320+
" Path:",
321+
" AssumeRolePolicyDocument: ",
322+
" Policies:",
323+
" - ",
324+
" PolicyName: \"root\"",
325+
" PolicyDocument:",
326+
" Version: \"2012-10-17\"",
327+
" Statement:",
328+
" - ",
329+
" Effect: \"Allow\"",
330+
" Action: \"*\"",
331+
" Resource: \"*\""
332+
],
333+
"description": "",
334+
"scope": "source.cloudformation"
335+
},
336+
"iam-user": {
337+
"prefix": "iam-user",
338+
"body": [
339+
"${1:iamUser:}",
340+
" Type: AWS::IAM::User",
341+
" Properties:",
342+
" Path: ${2:/}",
343+
" Groups:",
344+
" - ${3:groupname}",
345+
" LoginProfile:",
346+
" Password: ${4}",
347+
" PasswordResetRequired: ${5:true|false}",
348+
" Policies:",
349+
" - ${6:}policyname",
350+
" ManagedPolicyArns:",
351+
" - ${7:managedpolicyarn}"
352+
],
353+
"description": "",
354+
"scope": "source.cloudformation"
355+
},
356+
"iam-usertogroupaddition": {
357+
"prefix": "iam-usertogroupaddition",
358+
"body": [
359+
"${1:iamUserToGroupAddition}:",
360+
" Type: AWS::IAM::UserToGroupAddition",
361+
" Properties:",
362+
" GroupName:${2}",
363+
" Users:",
364+
" - ${3:username}"
365+
],
366+
"description": "",
367+
"scope": "source.cloudformation"
368+
},
369+
"internet-gateway": {
370+
"prefix": "internet-gateway",
371+
"body": [
372+
"${1:igwName}:",
373+
" Type: AWS::EC2::InternetGateway",
374+
" Properties:",
375+
" Tags:",
376+
" - Key: ${2:keyname}",
377+
" Value: ${3:value}",
378+
"${4:AttachGateway}:",
379+
" Type: AWS::EC2::VPCGatewayAttachment",
380+
" Properties:",
381+
" VpcId: ${4:vpc-id}",
382+
" InternetGatewayId: !Ref ${1:igwName}"
383+
],
384+
"description": "",
385+
"scope": "source.cloudformation"
386+
},
387+
"kinesis-stream": {
388+
"prefix": "kinesis-stream",
389+
"body": [
390+
"${1:kinesisStream}:",
391+
" Type: AWS::Kinesis::Stream",
392+
" Properties:",
393+
" Name:${2}",
394+
" RetentionPeriodHours: ${3:0}",
395+
" ShardCount: ${4:0}",
396+
" StreamEncryption:",
397+
" EncryptionType: KMS",
398+
" KeyId: ${5: # The GUID for the customer-managed KMS key to use for encryption}"
399+
],
400+
"description": "",
401+
"scope": "source.cloudformation"
402+
},
403+
"lambda-alias": {
404+
"prefix": "lambda-alias",
405+
"body": [
406+
"${1:lambdaAlias}:",
407+
" Type: AWS::Lambda::Alias",
408+
" Properties:",
409+
" Description:${2}",
410+
" FunctionName:${3: #The version of the Lambda function that you want to associate with this alias.}",
411+
" FunctionVersion:${4}",
412+
" Name:${5: #A name for the alias}"
413+
],
414+
"description": "",
415+
"scope": "source.cloudformation"
416+
},
417+
"lambda-function": {
418+
"prefix": "lambda-function",
419+
"body": [
420+
"${1:lambdaFunction}:",
421+
" Type: AWS::Lambda::Function",
422+
" Properties:",
423+
" Description: ${2}",
424+
" FunctionName: ${3}",
425+
" Handler: ${4}",
426+
" KmsKeyArn: ${5}",
427+
" MemorySize: ${6:128}",
428+
" Role: ${7:role-arn}",
429+
" Runtime: ${8:nodejs | nodejs4.3 | nodejs6.10 | nodejs8.10 | java8 | python2.7 | python3.6 | dotnetcore1.0 | dotnetcore2.0 | dotnetcore2.1 | nodejs4.3-edge | go1.x}",
430+
" Timeout: ${9}",
431+
" VpcConfig:",
432+
" SecurityGroupIds:",
433+
" - ${10:sg-id}",
434+
" SubnetIds:",
435+
" - ${11:subnet-id}",
436+
" Environment:",
437+
" Variables:",
438+
" ${12:key1}: ${13:value1} # A map of key-value pairs that the Lambda function can access",
439+
" Code:",
440+
" S3Bucket: ${14}",
441+
" S3Key: ${15}",
442+
" S3ObjectVersion: ${16}",
443+
" ZipFile: ${17}",
444+
" Tags:",
445+
" - Key: ${18:keyname}",
446+
" Value: ${19:value}"
447+
],
448+
"description": "",
449+
"scope": "source.cloudformation"
450+
},
451+
"lambda-permission": {
452+
"prefix": "lambda-permission",
453+
"body": [
454+
"${1:lambdaPermission}:",
455+
" Type: AWS::Lambda::Permission",
456+
" Properties:",
457+
" Action: ${2}",
458+
" FunctionName: ${3}",
459+
" Principal: ${4}",
460+
" SourceAccount: ${5}",
461+
" SourceArn: ${6}"
462+
],
463+
"description": "",
464+
"scope": "source.cloudformation"
465+
},
466+
"lambda-version": {
467+
"prefix": "lambda-version",
468+
"body": [
469+
"${1:lambdaVersion}:",
470+
" Type: AWS::Lambda::Version",
471+
" Properties:",
472+
" Description: ${2}",
473+
" FunctionName: ${3}",
474+
" CodeSha256: ${4}"
475+
],
476+
"description": "",
477+
"scope": "source.cloudformation"
478+
},
479+
"launch-config": {
480+
"prefix": "launch-config",
481+
"body": [
482+
"${1:launchConfigName}:",
483+
" Type: AWS::AutoScaling::LaunchConfiguration",
484+
" Properties:",
485+
" LaunchConfigurationName: ${2}",
486+
" AssociatePublicIpAddress: ${3:true|false}",
487+
" IamInstanceProfile: ${4:}",
488+
" ImageId: ${5}",
489+
" EbsOptimized: ${6:true|false}",
490+
" InstanceMonitoring: ${7:true|false}",
491+
" InstanceType: ${8}",
492+
" KernelId: ${9}",
493+
" KeyName: ${10}",
494+
" SecurityGroups:",
495+
" - ${11:sg-id}",
496+
" UserData:",
497+
" Fn::Base64: !Sub",
498+
" #!/bin/bash -ex # your script here"
499+
],
500+
"description": "",
501+
"scope": "source.cloudformation"
502+
},
245503
"rds-dbinstance": {
246504
"prefix": "rds-dbinstance",
247505
"body": [

0 commit comments

Comments
 (0)