From aa863210c2d2cb3596798abab72f093d62b714d5 Mon Sep 17 00:00:00 2001 From: Trent Mick Date: Wed, 7 Feb 2024 13:14:18 -0800 Subject: [PATCH 1/2] chore: add unreleasing packages to release-please config so their local deps get bumped This is option 1 from #1917. Refs: https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1917 --- release-please-config.json | 7 +++++ scripts/check-release-please.mjs | 51 ++++++++++++++++++++------------ 2 files changed, 39 insertions(+), 19 deletions(-) diff --git a/release-please-config.json b/release-please-config.json index e55af5702e..344b719ca6 100644 --- a/release-please-config.json +++ b/release-please-config.json @@ -21,6 +21,7 @@ "packages/opentelemetry-redis-common": {}, "packages/opentelemetry-sql-common": {}, "packages/opentelemetry-test-utils": {}, + "packages/opentelemetry-sampler-aws-xray": { "skip-github-release": true }, "plugins/node/instrumentation-amqplib": {}, "plugins/node/instrumentation-cucumber": {}, "plugins/node/instrumentation-dataloader": {}, @@ -32,10 +33,12 @@ "plugins/node/opentelemetry-instrumentation-aws-lambda": {}, "plugins/node/opentelemetry-instrumentation-aws-sdk": {}, "plugins/node/opentelemetry-instrumentation-bunyan": {}, + "plugins/node/opentelemetry-instrumentation-bunyan/examples": { "skip-github-release": true }, "plugins/node/opentelemetry-instrumentation-cassandra": {}, "plugins/node/opentelemetry-instrumentation-connect": {}, "plugins/node/opentelemetry-instrumentation-dns": {}, "plugins/node/opentelemetry-instrumentation-express": {}, + "plugins/node/opentelemetry-instrumentation-express/examples": { "skip-github-release": true }, "plugins/node/opentelemetry-instrumentation-fastify": {}, "plugins/node/opentelemetry-instrumentation-generic-pool": {}, "plugins/node/opentelemetry-instrumentation-graphql": {}, @@ -43,15 +46,19 @@ "plugins/node/opentelemetry-instrumentation-ioredis": {}, "plugins/node/opentelemetry-instrumentation-knex": {}, "plugins/node/opentelemetry-instrumentation-koa": {}, + "plugins/node/opentelemetry-instrumentation-koa/examples": { "skip-github-release": true }, "plugins/node/opentelemetry-instrumentation-memcached": {}, "plugins/node/opentelemetry-instrumentation-mongodb": {}, + "plugins/node/opentelemetry-instrumentation-mongodb/examples": { "skip-github-release": true }, "plugins/node/opentelemetry-instrumentation-mysql": {}, + "plugins/node/opentelemetry-instrumentation-mysql/examples": { "skip-github-release": true }, "plugins/node/opentelemetry-instrumentation-mysql2": {}, "plugins/node/opentelemetry-instrumentation-nestjs-core": {}, "plugins/node/opentelemetry-instrumentation-net": {}, "plugins/node/opentelemetry-instrumentation-pg": {}, "plugins/node/opentelemetry-instrumentation-pino": {}, "plugins/node/opentelemetry-instrumentation-redis": {}, + "plugins/node/opentelemetry-instrumentation-redis/examples": { "skip-github-release": true }, "plugins/node/opentelemetry-instrumentation-redis-4": {}, "plugins/node/opentelemetry-instrumentation-restify": {}, "plugins/node/opentelemetry-instrumentation-router": {}, diff --git a/scripts/check-release-please.mjs b/scripts/check-release-please.mjs index 699133c35d..d31b3c3110 100644 --- a/scripts/check-release-please.mjs +++ b/scripts/check-release-please.mjs @@ -29,35 +29,48 @@ const getProcessOutput = (cmd, args) => { return result.stdout.toString('utf8'); } -const lernaList = JSON.parse( - getProcessOutput('npx', ['lerna', 'list', '--json']) -); +const lernaList = JSON + .parse(getProcessOutput('npx', ['lerna', 'list', '--json', '-a'])) + .map((pkgInfo) => { + pkgInfo.relativeLocation = path.relative(PROJECT_ROOT, pkgInfo.location); + return pkgInfo; + }); const manifest = readJson('.release-please-manifest.json'); const config = readJson('release-please-config.json'); const lernaPackages = new Set( - lernaList.map((pkg) => { - return path.relative(PROJECT_ROOT, pkg.location); - }) + lernaList.map((pkgInfo) => pkgInfo.relativeLocation) ); const manifestPackages = new Set(Object.keys(manifest)); const configPackages = new Set(Object.keys(config.packages)); -console.log('lerna packages', lernaPackages); -console.log('manifest packages', manifestPackages); -console.log('config packages', configPackages); - -lernaPackages.forEach((relativeLocation) => { - logErrorIf( - !manifestPackages.has(relativeLocation), - `Could not find ${relativeLocation} in .release-please-manifest.json. If you are adding a new package. Add following - "${relativeLocation}": "0.0.1",`); +// console.log('lerna list', lernaList); +// console.log('manifest packages', manifestPackages); +// console.log('config packages', configPackages); - logErrorIf( - !configPackages.has(relativeLocation), - `Could not find ${relativeLocation} in release-please-config.json. If you are adding a new package. Add following to "packages" object - "${relativeLocation}": {},`); +lernaList.forEach((pkgInfo) => { + const relativeLocation = pkgInfo.relativeLocation + if (pkgInfo.private) { + // Should be in config, with `skip-github-release` option. + const configEntry = config.packages[relativeLocation] + if (!configEntry) { + errors.push(`Could not find "${relativeLocation}" entry in release-please-config.json. If you are adding a new package. Add following to "packages" object: + "${relativeLocation}": { "skip-github-release": true },`); + } else if (configEntry['skip-github-release'] !== true) { + errors.push(`The "${relativeLocation}" entry in release-please-config.json should have the '"skip-github-release": true' option`); + } + } else { + // Should be in manifest and config. + logErrorIf( + !manifestPackages.has(relativeLocation), + `Could not find "${relativeLocation}" entry in .release-please-manifest.json. If you are adding a new package. Add following + "${relativeLocation}": "0.0.1",`); + logErrorIf( + !configPackages.has(relativeLocation), + `Could not find "${relativeLocation}" entry in release-please-config.json. If you are adding a new package. Add following to "packages" object + "${relativeLocation}": {},`); + } }); manifestPackages.forEach((relativeLocation) => { From d5c33342530ba9870db4a30d17ddae5d1cc5a0b4 Mon Sep 17 00:00:00 2001 From: Trent Mick Date: Fri, 9 Feb 2024 12:52:43 -0800 Subject: [PATCH 2/2] drop commented out debug output --- scripts/check-release-please.mjs | 4 ---- 1 file changed, 4 deletions(-) diff --git a/scripts/check-release-please.mjs b/scripts/check-release-please.mjs index d31b3c3110..37c64f2e67 100644 --- a/scripts/check-release-please.mjs +++ b/scripts/check-release-please.mjs @@ -44,10 +44,6 @@ const lernaPackages = new Set( const manifestPackages = new Set(Object.keys(manifest)); const configPackages = new Set(Object.keys(config.packages)); -// console.log('lerna list', lernaList); -// console.log('manifest packages', manifestPackages); -// console.log('config packages', configPackages); - lernaList.forEach((pkgInfo) => { const relativeLocation = pkgInfo.relativeLocation if (pkgInfo.private) {