Skip to content
This repository has been archived by the owner on Apr 12, 2022. It is now read-only.

Move monorepo tests into sub-project #2960

Merged
merged 3 commits into from Feb 10, 2022
Merged

Move monorepo tests into sub-project #2960

merged 3 commits into from Feb 10, 2022

Conversation

evantahler
Copy link
Member

@evantahler evantahler commented Feb 10, 2022

This PR moves our internal monorepo-level tests to a subproject. This will reduce the dependencies required at the root-level of the project, and help make staging deploys that /have/ to run npm install work again maybe

Development Notes

I'm doing local testing against sentry.

  1. roo demo -cl - make some data with multiple sources and a destination
  2. enable sentry for EVERY task by setting SENTRY_DSN=-xxx and SENTRY_TRACE_SAMPLE_RATE=1.0
  3. roo run

Checklists

Development

  • Application changes have been tested appropriately

Impact

  • Code follows company security practices and guidelines
  • Security impact of change has been considered
  • Performance impact of change has been considered
  • Possible migration needs considered (model migrations, config migrations, etc.)

Please explain any security, performance, migration, or other impacts if relevant:

Code review

  • Pull request has a descriptive title and context useful to a reviewer. Screenshots or screencasts are attached where applicable.
  • Relevant tags have been added to the PR (bug, enhancement, internal, etc.)

@evantahler evantahler added the internal chores and housekeeping label Feb 10, 2022
@evantahler
Copy link
Member Author

@evantahler evantahler marked this pull request as ready for review February 10, 2022 19:14
@evantahler evantahler enabled auto-merge (squash) February 10, 2022 19:28
Copy link
Contributor

@teallarson teallarson left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's try it! A few comments but none blocking.

console.log("[syncpack]: " + stdout);
if (err || stderr) {
console.error(err || stderr);
throw new Error("syncpack error");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that the useful information (which packages are mismatched) will be in stdout not err or stderr.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah-ha! I'll add that back.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, it seems to be OK as-is. I changed one of the versions of jest and the test failed:

@evantahler ➜ /workspaces/grouparoo/monorepo (main ✗) $ npm test
> @grouparoo/monorepo@0.0.0 test
> jest

  console.log
    [syncpack]: - jest 27.5.1
      27.5.0 in devDependencies of @grouparoo/monorepo
      27.5.1 in devDependencies of @grouparoo/core
      27.5.1 in devDependencies of @grouparoo/app-staging-community
      27.5.1 in devDependencies of @grouparoo/app-staging-config
      27.5.1 in devDependencies of @grouparoo/app-staging-enterprise
      27.5.1 in devDependencies of @grouparoo/airtable
      27.5.1 in devDependencies of @grouparoo/app-templates
      27.5.1 in devDependencies of @grouparoo/bigquery
      27.5.1 in devDependencies of @grouparoo/braze
      27.5.1 in devDependencies of @grouparoo/calculated-property
      27.5.1 in devDependencies of @grouparoo/clickhouse
      27.5.1 in devDependencies of @grouparoo/closeio
      27.5.1 in devDependencies of @grouparoo/cloudwatch
      27.5.1 in devDependencies of @grouparoo/csv
      27.5.1 in devDependencies of @grouparoo/customerio
      27.5.1 in devDependencies of @grouparoo/dbt
      27.5.1 in devDependencies of @grouparoo/demo
      27.5.1 in devDependencies of @grouparoo/eloqua
      27.5.1 in devDependencies of @grouparoo/facebook
      27.5.1 in devDependencies of @grouparoo/google-sheets
      27.5.1 in devDependencies of @grouparoo/hubspot
      27.5.1 in devDependencies of @grouparoo/intercom
      27.5.1 in devDependencies of @grouparoo/iterable
      27.5.1 in devDependencies of @grouparoo/klaviyo
      27.5.1 in devDependencies of @grouparoo/logger
      27.5.1 in devDependencies of @grouparoo/mailchimp
      27.5.1 in devDependencies of @grouparoo/mailjet
      27.5.1 in devDependencies of @grouparoo/marketo
      27.5.1 in devDependencies of @grouparoo/mixpanel
      27.5.1 in devDependencies of @grouparoo/mongo
      27.5.1 in devDependencies of @grouparoo/mysql
      27.5.1 in devDependencies of @grouparoo/newrelic
      27.5.1 in devDependencies of @grouparoo/onesignal
      27.5.1 in devDependencies of @grouparoo/pardot
      27.5.1 in devDependencies of @grouparoo/pipedrive
      27.5.1 in devDependencies of @grouparoo/postgres
      27.5.1 in devDependencies of @grouparoo/prometheus
      27.5.1 in devDependencies of @grouparoo/redshift
      27.5.1 in devDependencies of @grouparoo/rollbar
      27.5.1 in devDependencies of @grouparoo/sailthru
      27.5.1 in devDependencies of @grouparoo/salesforce
      27.5.1 in devDependencies of @grouparoo/sendgrid
      27.5.1 in devDependencies of @grouparoo/sentry
      27.5.1 in devDependencies of @grouparoo/snowflake
      27.5.1 in devDependencies of @grouparoo/spec-helper
      27.5.1 in devDependencies of @grouparoo/sqlite
      27.5.1 in devDependencies of @grouparoo/vero
      27.5.1 in devDependencies of @grouparoo/zendesk
      27.5.1 in devDependencies of @grouparoo/ui-community
      27.5.1 in devDependencies of @grouparoo/ui-components
      27.5.1 in devDependencies of @grouparoo/ui-config
      27.5.1 in devDependencies of @grouparoo/ui-enterprise

      at __tests__/packages.ts:120:17

  console.error
    Error: Command failed: ./node_modules/.bin/syncpack list-mismatches
    
        at ChildProcess.exithandler (node:child_process:397:12)
        at ChildProcess.emit (node:events:390:28)
        at maybeClose (node:internal/child_process:1064:16)
        at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5) {
      killed: false,
      code: 1,
      signal: null,
      cmd: './node_modules/.bin/syncpack list-mismatches'
    }

      120 |         console.log("[syncpack]: " + stdout);
      121 |         if (err || stderr) {
    > 122 |           console.error(err || stderr);
          |                   ^
      123 |           throw new Error("syncpack error");
      124 |         }
      125 |         done();

      at __tests__/packages.ts:122:19

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, it seems to be OK as-is. I changed one of the versions of jest and the test failed:

@evantahler ➜ /workspaces/grouparoo/monorepo (main ✗) $ npm test
> @grouparoo/monorepo@0.0.0 test
> jest

  console.log
    [syncpack]: - jest 27.5.1
      27.5.0 in devDependencies of @grouparoo/monorepo
      27.5.1 in devDependencies of @grouparoo/core
      27.5.1 in devDependencies of @grouparoo/app-staging-community
      27.5.1 in devDependencies of @grouparoo/app-staging-config
      27.5.1 in devDependencies of @grouparoo/app-staging-enterprise
      27.5.1 in devDependencies of @grouparoo/airtable
      27.5.1 in devDependencies of @grouparoo/app-templates
      27.5.1 in devDependencies of @grouparoo/bigquery
      27.5.1 in devDependencies of @grouparoo/braze
      27.5.1 in devDependencies of @grouparoo/calculated-property
      27.5.1 in devDependencies of @grouparoo/clickhouse
      27.5.1 in devDependencies of @grouparoo/closeio
      27.5.1 in devDependencies of @grouparoo/cloudwatch
      27.5.1 in devDependencies of @grouparoo/csv
      27.5.1 in devDependencies of @grouparoo/customerio
      27.5.1 in devDependencies of @grouparoo/dbt
      27.5.1 in devDependencies of @grouparoo/demo
      27.5.1 in devDependencies of @grouparoo/eloqua
      27.5.1 in devDependencies of @grouparoo/facebook
      27.5.1 in devDependencies of @grouparoo/google-sheets
      27.5.1 in devDependencies of @grouparoo/hubspot
      27.5.1 in devDependencies of @grouparoo/intercom
      27.5.1 in devDependencies of @grouparoo/iterable
      27.5.1 in devDependencies of @grouparoo/klaviyo
      27.5.1 in devDependencies of @grouparoo/logger
      27.5.1 in devDependencies of @grouparoo/mailchimp
      27.5.1 in devDependencies of @grouparoo/mailjet
      27.5.1 in devDependencies of @grouparoo/marketo
      27.5.1 in devDependencies of @grouparoo/mixpanel
      27.5.1 in devDependencies of @grouparoo/mongo
      27.5.1 in devDependencies of @grouparoo/mysql
      27.5.1 in devDependencies of @grouparoo/newrelic
      27.5.1 in devDependencies of @grouparoo/onesignal
      27.5.1 in devDependencies of @grouparoo/pardot
      27.5.1 in devDependencies of @grouparoo/pipedrive
      27.5.1 in devDependencies of @grouparoo/postgres
      27.5.1 in devDependencies of @grouparoo/prometheus
      27.5.1 in devDependencies of @grouparoo/redshift
      27.5.1 in devDependencies of @grouparoo/rollbar
      27.5.1 in devDependencies of @grouparoo/sailthru
      27.5.1 in devDependencies of @grouparoo/salesforce
      27.5.1 in devDependencies of @grouparoo/sendgrid
      27.5.1 in devDependencies of @grouparoo/sentry
      27.5.1 in devDependencies of @grouparoo/snowflake
      27.5.1 in devDependencies of @grouparoo/spec-helper
      27.5.1 in devDependencies of @grouparoo/sqlite
      27.5.1 in devDependencies of @grouparoo/vero
      27.5.1 in devDependencies of @grouparoo/zendesk
      27.5.1 in devDependencies of @grouparoo/ui-community
      27.5.1 in devDependencies of @grouparoo/ui-components
      27.5.1 in devDependencies of @grouparoo/ui-config
      27.5.1 in devDependencies of @grouparoo/ui-enterprise

      at __tests__/packages.ts:120:17

  console.error
    Error: Command failed: ./node_modules/.bin/syncpack list-mismatches
    
        at ChildProcess.exithandler (node:child_process:397:12)
        at ChildProcess.emit (node:events:390:28)
        at maybeClose (node:internal/child_process:1064:16)
        at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5) {
      killed: false,
      code: 1,
      signal: null,
      cmd: './node_modules/.bin/syncpack list-mismatches'
    }

      120 |         console.log("[syncpack]: " + stdout);
      121 |         if (err || stderr) {
    > 122 |           console.error(err || stderr);
          |                   ^
      123 |           throw new Error("syncpack error");
      124 |         }
      125 |         done();

      at __tests__/packages.ts:122:19

Oh awesome!

package.json Show resolved Hide resolved
@evantahler evantahler merged commit 89808ef into main Feb 10, 2022
@evantahler evantahler deleted the monorepo-tests branch February 10, 2022 20:00
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
internal chores and housekeeping
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants