before_script: 
- npm install --scripts-prepend-node-path=auto


stages:
  - prepare
  - testParams
  - create
  - graph
  - init
 
prepare:
  stage: prepare
  script:
  - rm -rf /tmp/tfs
  - mkdir -p /tmp/tfs/subdir
  - sudo ln -fs `pwd`/bin/tfs.js /usr/bin/tfs


createParamsNull:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create

createParamsV:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -v

createParamsIT:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs2 -t s3

createParamsITF:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -f -i testResurs2 -t s3


createParamsITP:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs3 -t s3 -p aws


createParamsIT@P:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs4 -t s3@aws

  
createParamsITPD:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs5 -t s3 -p aws -d subdir/


createParamsITPP:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs5 -t s3 -p aws -P testResurs4

createParamsITPR:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs6 -t lmbd -r 'lambda_s3_key="DeepProdSayHelloCreateDb"'

createParamsITPRR:
  stage: testParams
  script:
  - cd /tmp/tfs
  - tfs create -i testResurs6 -t lmbd -r 'lambda_s3_key="DeepProdSayHelloCreateDb"' -r 'lambda_handler="tests.test"'


createIamLambda:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t iam -i DeepProdHelloWorldLambdaExec1234abcd

  
createIamApi:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t iam -i DeepProdHelloWorldApiExec1234abcd

  
createS3Private:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t s3 -i DeepProdPrivate1234abcd

  
createS3Website:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t s3-website -i DeepProdPublic1234abcd


  
createCfCdn:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t cf -i DeepProdCdn1234abcd -P DeepProdPublic1234abcd

createLambdaCreateDb:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t lambda -i DeepProdSayHelloCreateDb -P DeepProdHelloWorldLambdaExec1234abcd -s s3://deep-prod-private-1234abcd/SayHelloCreateDb.zip

createLambdaCreateFs:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t lambda -i DeepProdSayHelloCreateFs -P DeepProdHelloWorldLambdaExec1234abcd -s s3://deep-prod-private-1234abcd/SayHelloCreateFs.zip

  
createLambdaCreateMsg:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t lambda -i DeepProdSayHelloCreateMsg -P DeepProdHelloWorldLambdaExec1234abcd -s s3://deep-prod-private-1234abcd/SayHelloCreateMsg.zip

  
createApiApi:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t api -i DeepProdApi1234abcd -P DeepProdHelloWorldApiExec1234abcd

  
createApiEndpointDb:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t api-endpoint -i DeepHelloWorldSayHelloCreateDb -P DeepProdSayHelloCreateDb

  
createApiEndpointFs:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t api-endpoint -i DeepHelloWorldSayHelloCreateFs -P DeepProdSayHelloCreateFs

  
createApiEndpointMsg:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t api-endpoint -i DeepHelloWorldSayHelloCreateMsg -P DeepProdSayHelloCreateMsg

  
createDynamoDb:
  stage: create
  script:
  - cd /tmp/tfs
  - tfs create -t dynamo -i DeepProdName1234abcda1


drawGraph:
  stage: graph
  script:
  - cd /tmp/tfs
  - tfs graph


drawGraphB:
  stage: graph
  script:
  - cd /tmp/tfs
  - tfs graph -b aS3


initAll:
  stage: init
  script:
  - cd /tmp/tfs
  - tfs init
