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 test /usr/src/app/test
COPY typings /usr/src/app/typings COPY typings /usr/src/app/typings
RUN npm test \ RUN npm run test-nolint \
&& npm run build && npm run build
############################################################################## ##############################################################################

View File

@ -24,8 +24,7 @@ defaults: &defaults
name: Install npm dependencies name: Install npm dependencies
working_directory: /tmp/build/automation working_directory: /tmp/build/automation
command: | command: |
JOBS=max npm install \ JOBS=max npm install
&& npm cache clean --force
- run: - run:
name: Initialize the submodules (yocto layers) name: Initialize the submodules (yocto layers)
command: | command: |
@ -62,6 +61,22 @@ defaults: &defaults
version: 2 version: 2
jobs: 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: amd64:
<<: *defaults <<: *defaults
environment: environment:
@ -175,15 +190,40 @@ workflows:
version: 2 version: 2
build_and_maybe_deploy: build_and_maybe_deploy:
jobs: jobs:
- amd64 - generic
- i386 - amd64:
- rpi requires:
- armv7hf - generic
- aarch64 - i386:
- i386-nlp requires:
- amd64-debug - generic
- i386-debug - rpi:
- rpi-debug requires:
- armv7hf-debug - generic
- aarch64-debug - armv7hf:
- i386-nlp-debug 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": "webpack",
"build:debug": "npm run typescript:release && npm run coffeescript:release && npm run migrations:copy && npm run packagejson:copy", "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", "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", "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", "coverage": "istanbul report text && istanbul report html",
"test:fast": "TEST=1 mocha --opts test/fast-mocha.opts", "test:fast": "TEST=1 mocha --opts test/fast-mocha.opts",