From b2e2c68b86b7a7b16ea270f53dde7e400cae1560 Mon Sep 17 00:00:00 2001 From: Radosław Piliszek Date: Tue, 17 Dec 2019 12:57:49 +0100 Subject: Fix monasca-grafana being unbuildable due to old npm Affected builds on Ubuntu which had: npm 3.5.2 while the latest was: npm 6.13.4 And CentOS had: npm 5.6.0 This patch runs npm update via npm. Pinned to 6.x. Additionally, this moves npm packages prefix (root) to /usr/local to avoid conflicts with native packages. Change-Id: Ibaacc1cc478b2b2f8196a5da4eea3570d7d310ff Closes-bug: #1856699 (cherry picked from commit 308e85aa413da84ed107b27fa09a3f0e0a64392f) --- docker/monasca/monasca-grafana/Dockerfile.j2 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docker/monasca/monasca-grafana/Dockerfile.j2 b/docker/monasca/monasca-grafana/Dockerfile.j2 index 08f64a007..c296b8b59 100644 --- a/docker/monasca/monasca-grafana/Dockerfile.j2 +++ b/docker/monasca/monasca-grafana/Dockerfile.j2 @@ -50,6 +50,9 @@ ARG monasca_grafana_url=https://github.com/monasca/grafana/archive/$monasca_graf {% block monasca_grafana_install %} # NOTE(mgoddard): Pinning rake because rake 13.0.0 depends on Ruby 2.2, and CentOS 7 only provides # Ruby 2.0. +# NOTE(yoctozepto): Update npm to 6.x version to avoid issues with metadata parsing. +# NPM installs itself in /usr/local/bin (the default in Ubuntu) which is not in the PATH. +# This is forced for all distros to avoid conflicts with native packages. RUN gem install rake:"~>12" fpm \ && curl -sSL -o /tmp/monasca-grafana.tgz ${monasca_grafana_url} \ && mkdir -p ${monasca_grafana_build_path} \ @@ -57,7 +60,9 @@ RUN gem install rake:"~>12" fpm \ && rm -f /tmp/monasca-grafana.tgz \ && cd ${monasca_grafana_build_path} \ && go run build.go setup \ - && npm install \ + && npm config set prefix /usr/local -g \ + && npm install npm@6.x -g \ + && /usr/local/bin/npm install \ && go run build.go build package \ && mv ${monasca_grafana_build_path}/dist /grafana_pkgs \ && rm -rf /grafana -- cgit v1.2.3