Guest User

Untitled

a guest
Mar 9th, 2025
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 1.17 KB | None | 0 0
  1. image: node:18
  2.  
  3. stages:
  4.  - test
  5.   - migrate
  6.   - deploy
  7.  
  8. test:
  9.   stage: test
  10.   script:
  11.    - npm ci
  12.     - npm test
  13.   rules:
  14.     - if: '$CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME =~ /(develop|main)/'
  15.  
  16. migration_staging:
  17.   stage: migrate
  18.   script:
  19.    - npx [email protected] db push --db-url "$DATABASE_CONNECTION_STRING_STAGING"
  20.   rules:
  21.     - if: '$CI_COMMIT_REF_NAME == "develop" && $CI_PIPELINE_SOURCE == "push"'
  22.  
  23. deploy_staging:
  24.   stage: deploy
  25.   only:
  26.    - develop
  27.   script:
  28.    - npm install --global vercel
  29.     - vercel deploy --yes --token=$VERCEL_TOKEN --scope redacted > deployment-url.txt
  30.     - DEPLOYMENT_URL=$(cat deployment-url.txt)
  31.     - vercel alias --token $VERCEL_TOKEN $DEPLOYMENT_URL staging.redacted.com --scope redacted
  32.  
  33. migrate_production:
  34.   stage: migrate
  35.   script:
  36.    - npx [email protected] db push --db-url "$DATABASE_CONNECTION_STRING_PROD"
  37.   rules:
  38.     - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE == "push"'
  39.  
  40. deploy_production:
  41.   stage: deploy
  42.   only:
  43.    - main
  44.   script:
  45.    - npm install --global vercel
  46.     - vercel deploy --yes --prod --token=$VERCEL_TOKEN
Advertisement
Add Comment
Please, Sign In to add comment