diff --git a/.github/workflows/run-tests.yaml b/.github/workflows/run-tests.yaml index e37d5c194..70714c14c 100644 --- a/.github/workflows/run-tests.yaml +++ b/.github/workflows/run-tests.yaml @@ -84,6 +84,7 @@ jobs: run: | source ~/.nvm/nvm.sh yarn test + timeout-minutes: 10 env: PG_HOST: localhost PG_PORT: ${{ job.services.postgres.ports[5432] }} diff --git a/docker-compose-test.yml b/docker-compose-test.yml index c68da942d..4a2699bd3 100644 --- a/docker-compose-test.yml +++ b/docker-compose-test.yml @@ -1,7 +1,7 @@ version: '3' services: postgres-test: - image: "postgres:12.8" + image: "ankane/pgvector:v0.5.1" container_name: "omnivore-postgres-test" environment: - POSTGRES_USER=postgres @@ -16,6 +16,22 @@ services: expose: - 5432 + migrate-test: + build: + context: . + dockerfile: ./packages/db/Dockerfile + container_name: "omnivore-migrate-test" + command: '/bin/sh ./packages/db/setup.sh' # Also create a demo user with email: demo@omnivore.app, password: demo + environment: + - PGPASSWORD=postgres + - PG_HOST=postgres-test + - PG_USER=postgres + - PG_PASSWORD=postgres + - PG_DB=omnivore_test + depends_on: + postgres-test: + condition: service_healthy + api-test: build: context: . @@ -29,14 +45,12 @@ services: - PG_DB=omnivore_test - PG_PORT=5432 - PG_POOL_MAX=20 - - IMAGE_PROXY_URL=http://localhost:9999 - IMAGE_PROXY_SECRET=some-secret - JWT_SECRET=some_secret - SSO_JWT_SECRET=some_sso_secret - CLIENT_URL=http://localhost:3000 - GATEWAY_URL=http://localhost:8080/api - CONTENT_FETCH_URL=http://localhost:9090/ - - REMINDER_TASK_HANDLER_URL=/svc/reminders/trigger - BOOKMARKLET_JWT_SECRET=some_bookmarklet_secret - BOOKMARKLET_VERSION=1.0.0 - PREVIEW_IMAGE_WRAPPER_ID='selected_highlight_wrapper' @@ -46,5 +60,5 @@ services: - SEGMENT_WRITE_KEY='test' - PUBSUB_VERIFICATION_TOKEN='123456' depends_on: - postgres-test: - condition: service_healthy + migrate-test: + condition: service_completed_successfully diff --git a/packages/api/Dockerfile-test b/packages/api/Dockerfile-test index 053375d5e..ff5fa031b 100644 --- a/packages/api/Dockerfile-test +++ b/packages/api/Dockerfile-test @@ -8,6 +8,8 @@ COPY tsconfig.json . COPY /packages/readabilityjs/package.json ./packages/readabilityjs/package.json COPY /packages/api/package.json ./packages/api/package.json +COPY /packages/text-to-speech/package.json ./packages/text-to-speech/package.json +COPY /packages/content-handler/package.json ./packages/content-handler/package.json RUN apk --no-cache --virtual build-dependencies add \ python3 \ @@ -18,8 +20,9 @@ ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true RUN yarn install -ADD /packages/db ./packages/db -ADD /packages/readabilityjs ./packages/readabilityjs -ADD /packages/api ./packages/api +COPY /packages/readabilityjs ./packages/readabilityjs +COPY /packages/api ./packages/api +COPY /packages/text-to-speech ./packages/text-to-speech +COPY /packages/content-handler ./packages/content-handler CMD ["yarn", "workspace", "@omnivore/api", "test"] diff --git a/packages/api/package.json b/packages/api/package.json index f63e6f43b..d4801f5ed 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -37,9 +37,9 @@ "@opentelemetry/semantic-conventions": "^1.0.1", "@opentelemetry/tracing": "^0.24.0", "@sendgrid/mail": "^7.6.0", - "@sentry/integrations": "^7.77.0", - "@sentry/node": "^7.77.0", - "@sentry/tracing": "^7.77.0", + "@sentry/integrations": "^7.10.0", + "@sentry/node": "^5.26.0", + "@sentry/tracing": "^7.9.0", "addressparser": "^1.0.1", "analytics-node": "^6.0.0", "apollo-datasource": "^3.3.1", diff --git a/yarn.lock b/yarn.lock index cd4974f6f..1091ebb97 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5360,6 +5360,17 @@ proxy-from-env "^1.1.0" which "^2.0.2" +"@sentry/core@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-5.30.0.tgz#6b203664f69e75106ee8b5a2fe1d717379b331f3" + integrity sha512-TmfrII8w1PQZSZgPpUESqjB+jC6MvZJZdLtE/0hZ+SrnKhW3x5WlYLvTXZpcWePYBku7rl2wn1RZu6uT0qCTeg== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/minimal" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + "@sentry/core@7.50.0": version "7.50.0" resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.50.0.tgz#88bc9cbfc0cb429a28489ece6f0be7a7006436c4" @@ -5377,6 +5388,15 @@ "@sentry/types" "7.77.0" "@sentry/utils" "7.77.0" +"@sentry/hub@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-5.30.0.tgz#2453be9b9cb903404366e198bd30c7ca74cdc100" + integrity sha512-2tYrGnzb1gKz2EkMDQcfLrDTvmGcQPuWxLnJKXJvYTQDGLlEvi2tWz1VIHjunmOvJrB5aIQLhm+dcMRwFZDCqQ== + dependencies: + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + "@sentry/integrations@7.50.0": version "7.50.0" resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.50.0.tgz#82616f34ddba3c1f3e17b54900dfa7d8e0a0c537" @@ -5387,7 +5407,7 @@ localforage "^1.8.1" tslib "^1.9.3" -"@sentry/integrations@^7.77.0": +"@sentry/integrations@^7.10.0": version "7.77.0" resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.77.0.tgz#f2717e05cb7c69363316ccd34096b2ea07ae4c59" integrity sha512-P055qXgBHeZNKnnVEs5eZYLdy6P49Zr77A1aWJuNih/EenzMy922GOeGy2mF6XYrn1YJSjEwsNMNsQkcvMTK8Q== @@ -5397,6 +5417,15 @@ "@sentry/utils" "7.77.0" localforage "^1.8.1" +"@sentry/minimal@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/minimal/-/minimal-5.30.0.tgz#ce3d3a6a273428e0084adcb800bc12e72d34637b" + integrity sha512-BwWb/owZKtkDX+Sc4zCSTNcvZUq7YcH3uAVlmh/gtR9rmUvbzAA3ewLuB3myi4wWRAMEtny6+J/FN/x+2wn9Xw== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/types" "5.30.0" + tslib "^1.9.3" + "@sentry/nextjs@^7.42.0": version "7.50.0" resolved "https://registry.yarnpkg.com/@sentry/nextjs/-/nextjs-7.50.0.tgz#b9e7727c8f974644bb84a01f40a0adedb44ec416" @@ -5429,7 +5458,7 @@ lru_map "^0.3.3" tslib "^1.9.3" -"@sentry/node@7.77.0", "@sentry/node@^7.77.0": +"@sentry/node@7.77.0": version "7.77.0" resolved "https://registry.yarnpkg.com/@sentry/node/-/node-7.77.0.tgz#a247452779a5bcb55724457707286e3e4a29dbbe" integrity sha512-Ob5tgaJOj0OYMwnocc6G/CDLWC7hXfVvKX/ofkF98+BbN/tQa5poL+OwgFn9BA8ud8xKzyGPxGU6LdZ8Oh3z/g== @@ -5440,6 +5469,21 @@ "@sentry/utils" "7.77.0" https-proxy-agent "^5.0.0" +"@sentry/node@^5.26.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/node/-/node-5.30.0.tgz#4ca479e799b1021285d7fe12ac0858951c11cd48" + integrity sha512-Br5oyVBF0fZo6ZS9bxbJZG4ApAjRqAnqFFurMVJJdunNb80brh7a5Qva2kjhm+U6r9NJAB5OmDyPkA1Qnt+QVg== + dependencies: + "@sentry/core" "5.30.0" + "@sentry/hub" "5.30.0" + "@sentry/tracing" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + cookie "^0.4.1" + https-proxy-agent "^5.0.0" + lru_map "^0.3.3" + tslib "^1.9.3" + "@sentry/react@7.50.0": version "7.50.0" resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.50.0.tgz#ed85405518539905a34e5cf89baef719569ef4c0" @@ -5472,13 +5516,29 @@ "@types/aws-lambda" "^8.10.62" "@types/express" "^4.17.14" -"@sentry/tracing@^7.77.0": +"@sentry/tracing@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-5.30.0.tgz#501d21f00c3f3be7f7635d8710da70d9419d4e1f" + integrity sha512-dUFowCr0AIMwiLD7Fs314Mdzcug+gBVo/+NCMyDw8tFxJkwWAKl7Qa2OZxLQ0ZHjakcj1hNKfCQJ9rhyfOl4Aw== + dependencies: + "@sentry/hub" "5.30.0" + "@sentry/minimal" "5.30.0" + "@sentry/types" "5.30.0" + "@sentry/utils" "5.30.0" + tslib "^1.9.3" + +"@sentry/tracing@^7.9.0": version "7.77.0" resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.77.0.tgz#39d7c30834f503fe9eb20ce1c8c8bd28f7d7c9ce" integrity sha512-zr6eSCW3NJ124uj4Fy/6hh77cziy43dpYE1WpgvO/yhl1+kdrY2XVJ0bXGqwHU0KBm/eSgHD7yecUxmZUXiabA== dependencies: "@sentry-internal/tracing" "7.77.0" +"@sentry/types@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-5.30.0.tgz#19709bbe12a1a0115bc790b8942917da5636f402" + integrity sha512-R8xOqlSTZ+htqrfteCWU5Nk0CDN5ApUTvrlvBuiH1DyP6czDZ4ktbZB0hAgBlVcK0U+qpD3ag3Tqqpa5Q67rPw== + "@sentry/types@7.50.0": version "7.50.0" resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.50.0.tgz#52a035cad83a80ca26fa53c09eb1241250c3df3e" @@ -5489,6 +5549,14 @@ resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.77.0.tgz#c5d00fe547b89ccde59cdea59143bf145cee3144" integrity sha512-nfb00XRJVi0QpDHg+JkqrmEBHsqBnxJu191Ded+Cs1OJ5oPXEW6F59LVcBScGvMqe+WEk1a73eH8XezwfgrTsA== +"@sentry/utils@5.30.0": + version "5.30.0" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-5.30.0.tgz#9a5bd7ccff85ccfe7856d493bffa64cabc41e980" + integrity sha512-zaYmoH0NWWtvnJjC9/CBseXMtKHm/tm40sz3YfJRxeQjyzRqNQPgivpd9R/oDJCYj999mzdW382p/qi2ypjLww== + dependencies: + "@sentry/types" "5.30.0" + tslib "^1.9.3" + "@sentry/utils@7.50.0": version "7.50.0" resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.50.0.tgz#2b93a48024651436e95b7c8e2066aee7c2234d57"