担当pjのciにserverless frameworkを導入した話

24
担当PJCISERVERLESS FRAMEWORK導入した話 1

Upload: masaya-tawata

Post on 21-Mar-2017

22 views

Category:

Internet


0 download

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