担当pjのciにserverless frameworkを導入した話
TRANSCRIPT
-
PJCISERVERLESS
FRAMEWORK
1
-
( )CS( ~ )
2
-
CI
3
-
4
-
Slack
Integration AppHubot
HubotToken
Incoming WebHooks Webhook URL
5
-
Hubot
hubot-slackHubotSlack
JenkinsSlack Notification PluginSlack SlackIncoming WebHooks
6
-
7
-
API
8
-
AWS (AWS)
9
-
10
-
11
-
SERVERLESS FRAMEWORK
AWSIBM OpenWhiskOpenWhisk
12
-
CloudFormation
CloudFormationAWS
13
-
aws cli
aws cliAWS AWS
Serverless Framework
sudopipinstallawscliawsconfigureAWSAccessKeyID[None]:xxxxxxxxAWSSecretAccessKey[None]:xxxxxxxxDefaultregionname[None]:apnortheast1Defaultoutputformat[None]:json
npminstallserverlessg
14
-
serverlesscreatetemplateawsnodejspathservicename
cdservicename
$tree.handler.jsserverless.yml
15
-
serverless.yml
#serverless.yml
service:servicename
provider:name:awsruntime:nodejs4.3
functions:hello:handler:handler.hello
16
-
handler.jslambda function
//handler.js'usestrict'
module.exports.hello=(event,context,callback)=>{constresponse={statusCode:200,body:JSON.stringify({message:'GoServerlessv1.0!Yourfunctionexecutedsuccessfully!'input:event,}),}
callback(null,response)}
17
-
$serverlessdeploy
service:servicenamestage:devregion:useast1apikeys:Noneendpoints:Nonefunctions:servicenamedevhello:arn:aws:lambda:useast1:xxxxxxxxxxxx:
18
-
CloudFormation
Lambda
19
-
$serverlessremove
20
-
CI
21
-
22
-
Slackslsdeploy app= API
23
-
24