zenika-open-source / oss.zenika.com

Website to display awesome insights about organization open source activity
https://oss.zenika.com
Apache License 2.0
14 stars 106 forks source link

Fix the CI `yarn install` step #421

Open antoine-duchenet opened 12 months ago

antoine-duchenet commented 12 months ago

The quality-checks stage currently fails on yarn install --frozen-lockfile --cache-folder ~/.cache/yarn.

Trace details:

#!/bin/bash -eo pipefail
yarn install --frozen-lockfile --cache-folder ~/.cache/yarn
yarn install v1.22.19
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
warning "gatsby > eslint-config-react-app@6.0.0" has incorrect peer dependency "@typescript-eslint/eslint-plugin@^4.0.0".
warning "gatsby > eslint-config-react-app@6.0.0" has incorrect peer dependency "@typescript-eslint/parser@^4.0.0".
warning "gatsby > eslint-config-react-app@6.0.0" has unmet peer dependency "babel-eslint@^10.0.0".
warning "gatsby > react-server-dom-webpack@0.0.0-experimental-c8b778b7f-20220825" has incorrect peer dependency "react@0.0.0-experimental-c8b778b7f-20220825".
warning "gatsby > @typescript-eslint/eslint-plugin > tsutils@3.21.0" has unmet peer dependency "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta".
warning "gatsby > react-dev-utils > fork-ts-checker-webpack-plugin@6.5.3" has unmet peer dependency "typescript@>= 2.7".
warning " > eslint-config-airbnb@19.0.4" has unmet peer dependency "eslint@^7.32.0 || ^8.2.0".
warning " > eslint-config-airbnb@19.0.4" has unmet peer dependency "eslint-plugin-import@^2.25.3".
warning " > eslint-config-airbnb@19.0.4" has unmet peer dependency "eslint-plugin-jsx-a11y@^6.5.1".
warning " > eslint-config-airbnb@19.0.4" has unmet peer dependency "eslint-plugin-react@^7.28.0".
warning " > eslint-config-airbnb@19.0.4" has unmet peer dependency "eslint-plugin-react-hooks@^4.3.0".
warning "eslint-config-airbnb > eslint-config-airbnb-base@15.0.0" has unmet peer dependency "eslint@^7.32.0 || ^8.2.0".
warning "eslint-config-airbnb > eslint-config-airbnb-base@15.0.0" has unmet peer dependency "eslint-plugin-import@^2.25.2".
warning " > eslint-config-prettier@9.0.0" has unmet peer dependency "eslint@>=7.0.0".
warning " > eslint-plugin-prettier@5.0.0" has unmet peer dependency "eslint@>=8.0.0".
warning "netlify-cli > @netlify/build > ts-node@10.9.1" has unmet peer dependency "@types/node@*".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/sdk-node@0.39.1" has incorrect peer dependency "@opentelemetry/api@>=1.3.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-grpc > @opentelemetry/core@1.15.2" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-grpc > @opentelemetry/otlp-transformer@0.41.2" has incorrect peer dependency "@opentelemetry/api@>=1.3.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-grpc > @opentelemetry/resources@1.15.2" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-grpc > @opentelemetry/sdk-metrics@1.15.2" has incorrect peer dependency "@opentelemetry/api@>=1.3.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-proto > @opentelemetry/core@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-proto > @opentelemetry/otlp-transformer@0.39.1" has incorrect peer dependency "@opentelemetry/api@>=1.3.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-proto > @opentelemetry/resources@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-proto > @opentelemetry/sdk-metrics@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.3.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-trace-otlp-grpc > @opentelemetry/sdk-trace-base@1.15.2" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/sdk-node > @opentelemetry/sdk-trace-base@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/sdk-node > @opentelemetry/sdk-trace-node@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-grpc > @opentelemetry/otlp-transformer > @opentelemetry/sdk-logs@0.41.2" has incorrect peer dependency "@opentelemetry/api@>=1.4.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/exporter-metrics-otlp-proto > @opentelemetry/otlp-transformer > @opentelemetry/sdk-logs@0.39.1" has incorrect peer dependency "@opentelemetry/api@>=1.4.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/sdk-node > @opentelemetry/sdk-trace-node > @opentelemetry/context-async-hooks@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/sdk-node > @opentelemetry/sdk-trace-node > @opentelemetry/propagator-b3@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning "netlify-cli > @netlify/build > @honeycombio/opentelemetry-node > @opentelemetry/sdk-node > @opentelemetry/sdk-trace-node > @opentelemetry/propagator-jaeger@1.13.0" has incorrect peer dependency "@opentelemetry/api@>=1.0.0 <1.5.0".
warning Workspaces can only be enabled in private projects.
[4/4] Building fresh packages...
info This package requires node-gyp, which is not currently installed. Yarn will attempt to automatically install it. If this fails, you can run "yarn global add node-gyp" to manually install it.
error An unexpected error occurred: "/home/circleci/project/node_modules/gatsby-cli: Cannot read properties of undefined (reading 'getOption')".
info If you think this is a bug, please open a bug report with the information provided in "/home/circleci/.config/yarn/global/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
success Installed "node-gyp@9.4.0" with binaries:
      - node-gyp

Exited with code exit status 1

I did not succeed to reproduce it locally for now.
The node-gyp message seems unrelated.

jeanphi-baconnais commented 12 months ago

I don't know why. I removed the cache to allows me to accept all PRs on this repo

antoine-duchenet commented 12 months ago

I do reproduce it (randomly) by using the cimg/node:18.18.0 image AND set -eo pipefail.
The gatsby-cli error is propagated via -o pipefail and the whole container stops due to the -e.

This is only side-effects though, it does not explain the original gatsby-cli error.

antoine-duchenet commented 12 months ago

@jeanphibaconnais The problem seems to never happen after upgrading to Yarn 3.

Should we upgrade ?

jeanphi-baconnais commented 12 months ago

we can try 👍

antoine-duchenet commented 12 months ago

The error (#428) does not happen with Yarn 3 since it does not need a global installation of node-gyp, everything makes sense :smile: