Add a precheck that linting/tests work on node 10

This allows us to avoid re-linting for every arch

Change-type: patch
This commit is contained in:
Pagan Gazzard 2020-03-23 17:44:17 +00:00
parent 81966446d9
commit 7945bb5a77
3 changed files with 57 additions and 16 deletions

View File

@ -66,7 +66,7 @@ COPY src /usr/src/app/src
COPY test /usr/src/app/test
COPY typings /usr/src/app/typings
RUN npm test \
RUN npm run test-nolint \
&& npm run build
##############################################################################

View File

@ -24,8 +24,7 @@ defaults: &defaults
name: Install npm dependencies
working_directory: /tmp/build/automation
command: |
JOBS=max npm install \
&& npm cache clean --force
JOBS=max npm install
- run:
name: Initialize the submodules (yocto layers)
command: |
@ -62,6 +61,22 @@ defaults: &defaults
version: 2
jobs:
generic:
docker:
- image: library/node:10
steps:
- checkout
- run:
name: Run tests
command: |
JOBS=max npm ci && npm test
environment:
DOCKER_USERNAME: travisciresin
ARCH: amd64
PUSH_IMAGES: 'true'
STAGING_API_ENDPOINT: https://api.balena-staging.com
PRODUCTION_API_ENDPOINT: https://api.balena-cloud.com
DEBUG: ''
amd64:
<<: *defaults
environment:
@ -175,15 +190,40 @@ workflows:
version: 2
build_and_maybe_deploy:
jobs:
- amd64
- i386
- rpi
- armv7hf
- aarch64
- i386-nlp
- amd64-debug
- i386-debug
- rpi-debug
- armv7hf-debug
- aarch64-debug
- i386-nlp-debug
- generic
- amd64:
requires:
- generic
- i386:
requires:
- generic
- rpi:
requires:
- generic
- armv7hf:
requires:
- generic
- aarch64:
requires:
- generic
- i386-nlp:
requires:
- generic
- amd64-debug:
requires:
- generic
- i386-debug:
requires:
- generic
- rpi-debug:
requires:
- generic
- armv7hf-debug:
requires:
- generic
- aarch64-debug:
requires:
- generic
- i386-nlp-debug:
requires:
- generic

View File

@ -12,7 +12,8 @@
"build": "webpack",
"build:debug": "npm run typescript:release && npm run coffeescript:release && npm run migrations:copy && npm run packagejson:copy",
"lint": "npm run lint:coffee && npm run lint:typescript",
"test": "npm run lint && npm run test:build && TEST=1 JUNIT_REPORT_PATH=report.xml istanbul cover _mocha && npm run coverage",
"test": "npm run lint && npm run test-nolint",
"test-nolint": "npm run test:build && TEST=1 JUNIT_REPORT_PATH=report.xml istanbul cover _mocha && npm run coverage",
"test:build": "npm run typescript:test-build && npm run coffeescript:test && npm run testitems:copy && npm run migrations:copy-test && npm run packagejson:copy",
"coverage": "istanbul report text && istanbul report html",
"test:fast": "TEST=1 mocha --opts test/fast-mocha.opts",