Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-52471

npm is missing from latest distribution builds

    XMLWordPrintable

    Details

    • Similar Issues:
    • Sprint:
      Evergreen - Milestone 1

      Description

      Since 17 hours ago, builds are failing because npm is not found anymore.

      It needs immediate fixing as nothing can work without npm for Essentials client.

        Attachments

        1. 8.11.png
          8.11.png
          161 kB
        2. 8.9.png
          8.9.png
          158 kB

          Issue Links

            Activity

            Hide
            batmat Baptiste Mathus added a comment -

            Between 8.9.3-r1 and 8.11.3-r2, nodejs-npm is no longer a dependency of #nodejs Alpine package. Hum. 8.9 got built on 2018-07-08 11:20:07, wondering why it only started to fail for us 17 hours ago, i.e. ~2 days after build.
            Guess it took a bit of time to go out...

            vs.

            Show
            batmat Baptiste Mathus added a comment - Between 8.9.3-r1 and 8.11.3-r2, nodejs-npm is no longer a dependency of #nodejs Alpine package. Hum. 8.9 got built on 2018-07-08 11:20:07, wondering why it only started to fail for us 17 hours ago, i.e. ~2 days after build. Guess it took a bit of time to go out... vs.
            Hide
            batmat Baptiste Mathus added a comment -

            The root cause is very likely that somewhere in the last few hours, the tag openjdk:8-jre-alpine was updated to point to openjdk:8-jre-alpine3.8 instead of openjdk:8-jre-alpine3.7.

            See below:
             

            $ d run -ti openjdk:8-jre-alpine3.7 sh -c 'apk add --no-cache nodejs ; npm --version'
            fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
            fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
            (1/7) Installing nodejs-npm (8.9.3-r1)
            (2/7) Installing c-ares (1.13.0-r0)
            (3/7) Installing libcrypto1.0 (1.0.2o-r0)
            (4/7) Installing http-parser (2.7.1-r1)
            (5/7) Installing libssl1.0 (1.0.2o-r0)
            (6/7) Installing libuv (1.17.0-r0)
            (7/7) Installing nodejs (8.9.3-r1)
            Executing busybox-1.27.2-r11.trigger
            OK: 135 MiB in 59 packages
            5.5.1
            $ d run -ti openjdk:8-jre-alpine3.8 sh -c 'apk add --no-cache nodejs ; npm --version'
            fetch http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/APKINDEX.tar.gz
            fetch http://dl-cdn.alpinelinux.org/alpine/v3.8/community/x86_64/APKINDEX.tar.gz
            (1/6) Installing c-ares (1.14.0-r0)
            (2/6) Installing libcrypto1.0 (1.0.2o-r1)
            (3/6) Installing http-parser (2.8.1-r0)
            (4/6) Installing libssl1.0 (1.0.2o-r1)
            (5/6) Installing libuv (1.20.2-r0)
            (6/6) Installing nodejs (8.11.3-r1)
            Executing busybox-1.28.4-r0.trigger
            OK: 106 MiB in 58 packages
            sh: npm: not found
            

            I am going to fix it in many commits: showing openjdk:8-jre-alpine3.7 does work. Then bumping to 3.8 explicitly and add the new nodejs-npm package to install.

            This will also make us more stable in the future in case of upgrades upstream: if a 3.9 comes in and break something, we will not see it (as we'll be on 3.8) until we explicitly try to upgrade. Yay GitOps/explicit bumps instead of magical headaches from everywhere.

            Show
            batmat Baptiste Mathus added a comment - The root cause is very likely that somewhere in the last few hours, the tag openjdk:8-jre-alpine was updated to point to openjdk:8-jre-alpine3.8 instead of openjdk:8-jre-alpine3.7 . See below:   $ d run -ti openjdk:8-jre-alpine3.7 sh -c 'apk add --no-cache nodejs ; npm --version' fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz (1/7) Installing nodejs-npm (8.9.3-r1) (2/7) Installing c-ares (1.13.0-r0) (3/7) Installing libcrypto1.0 (1.0.2o-r0) (4/7) Installing http-parser (2.7.1-r1) (5/7) Installing libssl1.0 (1.0.2o-r0) (6/7) Installing libuv (1.17.0-r0) (7/7) Installing nodejs (8.9.3-r1) Executing busybox-1.27.2-r11.trigger OK: 135 MiB in 59 packages 5.5.1 $ d run -ti openjdk:8-jre-alpine3.8 sh -c 'apk add --no-cache nodejs ; npm --version' fetch http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/APKINDEX.tar.gz fetch http://dl-cdn.alpinelinux.org/alpine/v3.8/community/x86_64/APKINDEX.tar.gz (1/6) Installing c-ares (1.14.0-r0) (2/6) Installing libcrypto1.0 (1.0.2o-r1) (3/6) Installing http-parser (2.8.1-r0) (4/6) Installing libssl1.0 (1.0.2o-r1) (5/6) Installing libuv (1.20.2-r0) (6/6) Installing nodejs (8.11.3-r1) Executing busybox-1.28.4-r0.trigger OK: 106 MiB in 58 packages sh: npm: not found I am going to fix it in many commits: showing openjdk:8-jre-alpine3.7 does work. Then bumping to 3.8 explicitly and add the new nodejs-npm package to install. This will also make us more stable in the future in case of upgrades upstream: if a 3.9 comes in and break something, we will not see it (as we'll be on 3.8) until we explicitly try to upgrade. Yay GitOps/explicit bumps instead of magical headaches from everywhere.

              People

              Assignee:
              batmat Baptiste Mathus
              Reporter:
              batmat Baptiste Mathus
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: