Skip to content

adrianwit/serverless_e2e

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Serverless e2e testing examples

This project contains example applications using serverless technology You can run all e2e test automation runner.

E2E automation workflow:

This project uses endly as e2e test runner.

  • Basic workflow demystified

@deploy.yaml

init:
   srcCodeLocation: ${appPath}/hello/
   target:
      URL: ssh://127.0.0.1
   credentials: dev   
defaults:
  credentials: gcp-e2e
pipeline:
  
  package:
    action: exec:run
    comments: vendor build for deployment speedup using SSH service
    target: $target
    commands:
      - cd ${appPath}/split
      - go mod vendor

  deploy:
    action: gcp/cloudfunctions:deploy
    '@name': HelloWorld
    entryPoint: HelloWorldFn
    runtime: go111
    source:
      URL: $srcCodeLocation
  1. 'init' node: variable initialization
  2. 'pipeline' node: tasks definition
  3. package/deploy is arbitrary task name.
  4. defaults node appends specified attributes to all action nodes (no override).
  5. node with 'action' attribute triggers API call to specified service:method
    • package
    sshExecutorService.run({
        target: {
            URL:"ssh://127.0.0.1",
            credentials: "dev"
        },
        commands: [
            'cd ${appPath}/split',
            'go mod vendor' 
        ]
    })
    • deploy
    gcpCloudFunctionsService.deploy({
         name: "HelloWorld",
         credentials: "gcp-e2e",
         entryPoint: "HelloWorldFn",
         runtime: "go111",
         source: {
            URL: '/somepath//hello/'
         }
    })
  6. API contracts details
     endly -s='gcp/cloudfunctions'
     endly -s='gcp/cloudfunctions:deploy'
     
     endly -s='aws/lambda'
     endly -s='aws/lambda:deploy'

     endly -s='*'
      
  1. Find out more about E2E endly workflows.

About

Serverless e2e testing examples

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages