Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- image: node:alpine
- stages:
- - test
- - deploy
- #cache:
- # key: ${CI_COMMIT_REF_SLUG}
- # paths:
- # - "api/node_modules"
- api:test:
- stage: test
- image: node:alpine
- services:
- - "postgres:latest"
- variables:
- # Postgres service config
- POSTGRES_HOST: "postgres"
- POSTGRES_DB: "postgres"
- POSTGRES_USER: "postgres"
- POSTGRES_PASSWORD: "postgres"
- DOCKER_HOST: tcp://docker:2375
- DOCKER_DRIVER: overlay2
- # Postgres connection details
- PGHOST: ${POSTGRES_HOST}
- PGUSER: ${POSTGRES_USER}
- PGDATABASE: ${POSTGRES_DB}
- PGPASSWORD: ${POSTGRES_PASSWORD}
- # TypeORM config
- TYPEORM_CONNECTION: "postgres"
- TYPEORM_HOST: "postgres"
- TYPEORM_USERNAME: ${POSTGRES_USER}
- TYPEORM_PASSWORD: ${POSTGRES_PASSWORD}
- TYPEORM_DATABASE: ${POSTGRES_DB}
- TYPEORM_SCHEMA: "application"
- TYPEORM_SYNCHRONIZE: "true"
- TYPEORM_LOGGING: "true"
- TYPEORM_ENTITIES: "src/**/*.entity.ts,src/**/*.entity.js"
- before_script:
- - apk add postgresql-client
- - psql -f ${CI_PROJECT_DIR}/db/init_db.sql
- - cd ${CI_PROJECT_DIR}/api
- - npm install
- script:
- - cd ${CI_PROJECT_DIR}/api
- - npm run test
- api:deploy:
- stage: deploy
- image: node:alpine
- script:
- - cd ${CI_PROJECT_DIR}/api
- - npm run build
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement