License Management job failing due to outdated NodeJS version

Summary

The GitLab license_management job fails for any project requiring Node >= 8.16 since it uses the license-management:12-3-stable image, which is Node 8.15.

Steps to reproduce

Run license-management against a NodeJS project with a dependency on Node 8.16 (which was released 2019-04-16, and is the latest maintenance LTS release [latest minor release at least]).

This was found when upgrading to a project to Puppeteer v2.0.0, so that's a good example dependency.

What is the current bug behavior?

The license_management job fails and produces no report, with following log (relevant except at least):

Convert package-lock.json to yarn.lock
yarn import v1.13.0
info found npm package-lock.json, converting to yarn.lock
warning jest > jest-cli > jest-config > jest-environment-jsdom > jsdom > left-pad@1.3.0: use String.prototype.padStart()
error puppeteer@2.0.0: The engine "node" is incompatible with this module. Expected version ">=8.16.0". Got "8.15.0"
error Found incompatible module
info Visit https://yarnpkg.com/en/docs/cli/import for documentation about this command.
Cleanup generated ./yarn.lock
Uploading artifacts...
WARNING: gl-license-management-report.json: no matching files 
ERROR: No files to upload                          
ERROR: Job failed: exit code 1

What is the expected correct behavior?

The license_management job should support the latest maintenance LTS NodeJS release.

Output of checks

This bug happens on GitLab.com (here if you need an example project).

Edited Oct 26, 2019 by Aaron Goldenthal
Assignee Loading
Time tracking Loading