Browse Source

4. Install step

main
FONTAINE Pierre 6 years ago
committed by Pierre FONTAINE
parent
commit
926714abc2
  1. 78
      .circleci/config.yml
  2. 4
      package.json

78
.circleci/config.yml

@ -1,24 +1,74 @@
version: 2.1
jobs:
install: &shared-config
docker:
- image: cimg/node:14.10.1 # the primary container, where your job's commands are run
build:
docker: &shared-docker
- image: cimg/node:12.18.4 # the primary container, where your job's commands are run
auth:
username: mydockerhub-user
password: $DOCKERHUB_PASSWORD # context / project UI env-var reference
password: $DOCKERHUB_PASSWORD # context / project UI env-var reference
steps:
- checkout # check out the code in the project directory
- run: yarn global add node-gyp && yarn install
- restore_cache:
keys:
- restore_cache :
keys :
- npm-v1-dependencies-{{ checksum "yarn.lock" }}
- run: yarn lint
- run: yarn test:ci
- run: yarn global add node-gyp && yarn install
- save_cache:
paths:
- ./node_modules
key: npm-v1-dependencies-{{ checksum "yarn.lock" }}
lint:
<<: *shared-config
steps:
docker: *shared-docker
steps:
- checkout # check out the code in the project directory
- restore_cache :
keys :
- npm-v1-dependencies-{{ checksum "yarn.lock" }}
- run: yarn lint && yarn format:check
test:
<<: *shared-config
ci-test:
docker: *shared-docker
steps:
- checkout # check out the code in the project directory
- restore_cache :
keys :
- npm-v1-dependencies-{{ checksum "yarn.lock" }}
- run: yarn test:ci
postgres-test:
docker:
- image: cimg/node:12.18.4
environment:
DATABASE_URL: postgres://psqluser:password@localhost:5432/psdb
JWT_SECRET: some string
API_HOST: localhost
API_PROTOCOL: http
API_PORT: 3000
- image: circleci/postgres:9.6.2-alpine
environment:
POSTGRES_USER: psqluser
POSTGRES_DB: psdb
POSTGRES_PASSWORD: password
steps:
- run: yarn test:ci
- checkout # check out the code in the project directory
- restore_cache:
keys:
- npm-v1-dependencies-{{ checksum "yarn.lock" }}
- run: yarn test:e2e
workflows:
version: 2
build_test:
jobs :
- build
- lint:
requires:
- build
- ci-test:
requires:
- build
- postgres-test:
requires:
- build

4
package.json

@ -20,8 +20,8 @@
"test:cov": "jest --coverage",
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
"test:e2e": "jest --config ./test/jest-e2e.json",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\" \"./**/*.{yaml,yml}\"",
"format:check": "prettier --list-different \"src/**/*.ts\" \"test/**/*.ts\" \"./**/*.{yaml,yml}\"",
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
"format:check": "prettier --list-different \"src/**/*.ts\" \"test/**/*.ts\"",
"generate": "hygen"
},
"dependencies": {

Loading…
Cancel
Save