UNPKG

2.06 kBYAMLView Raw
1version: 2
2
3aliases:
4 - &restore-cache
5 restore_cache:
6 key: dependency-cache-{{ checksum "package.json" }}
7 - &install-deps
8 run:
9 name: Install dependencies
10 command: npm ci
11 - &build-packages
12 run:
13 name: Build
14 command: npm run build
15
16jobs:
17 build:
18 working_directory: ~/nest
19 docker:
20 - image: circleci/node:16
21 steps:
22 - checkout
23 - run:
24 name: Update NPM version
25 command: 'sudo npm install -g npm@latest'
26 - restore_cache:
27 key: dependency-cache-{{ checksum "package.json" }}
28 - run:
29 name: Install dependencies
30 command: npm ci
31 - save_cache:
32 key: dependency-cache-{{ checksum "package.json" }}
33 paths:
34 - ./node_modules
35 - run:
36 name: Build
37 command: npm run build
38 integration_tests:
39 working_directory: ~/nest
40 machine: true
41 steps:
42 - checkout
43 - run:
44 name: Prepare nvm
45 command: |
46 echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
47 echo ' [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> $BASH_ENV
48 - run:
49 name: Upgrade Node.js
50 command: |
51 nvm install v12
52 node -v
53 nvm alias default v12
54 - run:
55 name: Install Docker Compose
56 command: |
57 curl -L https://github.com/docker/compose/releases/download/1.19.0/docker-compose-`uname -s`-`uname -m` > ~/docker-compose
58 chmod +x ~/docker-compose
59 sudo mv ~/docker-compose /usr/local/bin/docker-compose
60 - *install-deps
61 - run:
62 name: Prepare
63 command: |
64 docker-compose up -d
65 sleep 10
66 - run:
67 name: List containers
68 command: docker ps
69 - run:
70 name: e2e tests
71 command: npm run test:e2e
72
73workflows:
74 version: 2
75 build-and-test:
76 jobs:
77 - build
78 - integration_tests:
79 requires:
80 - build
81
\No newline at end of file