Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- image: node:latest
- before_script:
- - mkdir -p ~/.ssh
- - touch ~/.ssh/dev-karlilu2.pem
- - touch ~/.ssh/karlilu2.pem
- - echo "$SSH_PRIVATE_KEY_STAGING" > ~/.ssh/dev-karlilu2.pem
- - echo "$SSH_PROVATE_KEY_PROD" > ~/.ssh/karlilu2.pem
- - echo ""
- - chmod 400 ~/.ssh/dev-karlilu2.pem
- - chmod 400 ~/.ssh/karlilu2.pem
- - echo "$SSH_KNOWN_HOSTS" > ~/.ssh/known_hosts
- - chmod 644 ~/.ssh/known_hosts
- stages:
- - staging-client
- - staging-admin
- - prod-client
- staging-client:
- stage: staging-client
- only:
- - staging
- script:
- # install dependencies
- - npm install
- # build client app
- - npm run client-build
- # move htaccess
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "mkdir tmp/client"
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "cp customer/.htaccess tmp/client/"
- # remove root dir
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "rm -rf customer/*"
- # push to server
- - scp -rp -i ~/.ssh/dev-karlilu2.pem dist/* ubuntu@dev.karlilu.com:/home/ubuntu/customer/
- # moveback .htaccess
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "cp tmp/client/.htaccess customer/"
- # remove tmp lcient dir
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "rm -rf tmp/client"
- staging-admin:
- stage: staging-admin
- only:
- - staging
- script:
- # install dependencies
- - npm install
- # build client app
- - npm run admin-build
- # move htaccess
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "mkdir tmp/admin"
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "cp dashboard/.htaccess tmp/admin/"
- # remove root dir
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "rm -rf dashboard/*"
- # push to server
- - scp -rp -i ~/.ssh/dev-karlilu2.pem dist/* ubuntu@dev.karlilu.com:/home/ubuntu/dashboard/
- # moveback .htaccess
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "cp tmp/admin/.htaccess dashboard/"
- # remove tmp lcient dir
- - ssh -i ~/.ssh/dev-karlilu2.pem ubuntu@dev.karlilu.com "rm -rf tmp/admin"
- prod-client:
- stage: prod-client
- only:
- - master
- script:
- - ssh -i ~/.ssh/karlilu2.pem ubuntu@karlilu.com "mkdir test_ssh"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement