ci: make sure npm is installed in tests

Also update node to version 10.
27 jobs for master in 6 minutes and 36 seconds (queued for 6 seconds)
latest
Status Name Job ID Coverage
  Test
failed py3.5-min-mysql #463036

00:03:54

failed py3.5-min-postgresql #463030

00:03:15

failed py3.5-min-sqlite #463026

00:02:47

failed py3.5-pypi-mysql #463038

00:03:11

failed py3.5-pypi-postgresql #463029

00:02:33

failed py3.5-pypi-sqlite #463027

00:03:13

failed py3.6-min-mysql #463040

00:02:32

failed py3.6-min-postgresql #463035

00:01:01

failed py3.6-min-sqlite #463034

00:01:53

failed py3.6-pypi-mysql #463042

00:01:48

failed py3.6-pypi-postgresql #463037

00:01:54

failed py3.6-pypi-sqlite #463033

00:01:01

failed test-docs #462978

00:00:59

failed py3.5-min-mysql #462969

00:03:48

failed py3.5-min-postgresql #462965

00:03:10

failed py3.5-min-sqlite #462961

00:02:39

failed py3.5-pypi-mysql #462970

00:03:30

failed py3.5-pypi-postgresql #462968

00:01:59

failed py3.5-pypi-sqlite #462964

00:02:40

failed py3.6-min-mysql #462975

00:01:38

failed py3.6-min-postgresql #462973

00:01:15

failed py3.6-min-sqlite #462971

00:01:37

failed py3.6-pypi-mysql #462977

00:03:01

failed py3.6-pypi-postgresql #462974

00:01:47

failed py3.6-pypi-sqlite #462972

00:01:12

 
  Coverage
skipped global-coverage #462979
 
  Deploy
skipped pages #462981
 
Name Stage Failure
failed
test-docs Test
    invenio-files-rest 1.0.0a22 depends on fs<2.0 and >=0.5.4

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/user_guide/#fixing-conflicting-dependencies
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.6-min-sqlite Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.5-pypi-sqlite Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.6-min-mysql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.6-min-postgresql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.6-pypi-postgresql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.5-min-mysql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.5-min-postgresql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.5-pypi-mysql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.6-pypi-sqlite Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.6-pypi-mysql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.5-min-sqlite Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1

failed
py3.5-pypi-postgresql Test
Running after script...
$ mv .coverage .coverage.${CI_JOB_ID}
mv: cannot stat '.coverage': No such file or directory
Uploading artifacts for failed job
Uploading artifacts...
WARNING: /builds/rodare/invenio-uploadbyurl/report.xml: no matching files
ERROR: No files to upload
Cleaning up project directory and file based variables
ERROR: Job failed: exit code 1