Commit Graph

1516 Commits

Author SHA1 Message Date
Gergő Jedlicska d6dad6609a feat(gatekeeper): shedule subscription downscale 2024-10-28 18:58:13 +01:00
Gergő Jedlicska a80be1ca89 Merge branch 'main' of github.com:specklesystems/speckle-server into gergo/web-2047-user-joins-the-workspace-event 2024-10-25 11:31:20 +02:00
Gergő Jedlicska af3857a209 gergo/web 2038 billing graphql api (#3379)
* feat(gatekeeper): add gatekeeper module feature flag

* feat(gatekeeper): add workspace pricing table domain

* feat(gatekeeper): add checkout session creation

* feat(gatekeeper): verify stripe signature

* wip(gatekeeper): checkout callbacks

* feat(gatekeeper): add unlimited and academia plan types

* refactor(envHelper): getStringFromEnv helper

* chore(gatekeeper): add future todos

* feat(gatekeeper): add productId to the subscription domain

* feat(gatekeeper): add in memory repositories

* feat(gatekeeper): add more errors

* feat(gatekeeper): complete checkout session service

* feat(gatekeeper): add stripe client implementation

* feat(gatekeeper): add checkout session completion webhook callback path

* feat(gendo): fix not needing env vars if gendo module is not enabled

* feat(gatekeeper): require a license for billing

* chore(gatekeeper): cleanup before testing

* feat(gatekeeper): subscriptionData parsing model

* ci: add billing integration and gatekeeper modules to test config

* test(gatekeeper): add checkout service tests

* feat(gatekeeper): make completeCheckout callback idempotent properly

* feat(gatekeeper): move to knex based repositories

* test(gatekeeper): billing repository tests

* feat(gatekeeper): add yearly billing cycle toggle

* feat(ci): add stripe integration context to test job

* feat(billingPage): conditionally render the checkout CTAs

* fix(gatekeeper): remove flaky test condition

* feat(helm): add billing integration feature flag

* WIP billing gql api

* feat(gatekeeper): cancel checkout session api

* feat(gatekeeper): handle existing checkout sessions, when trying to create a new one

* feat(gatekeeper): add workspace plans gql api

* feat(gatekeeper): handle cancelation and subscription updates

* fix(gatekeeper): scope initialization

* fix(gatekeeper): eliminate stripe client import sideeffect

* fix(gatekeeper): eliminate stripe client import sideeffect 2

* fix(mainConstants): fitler gatekeeper scopes with feature flag
2024-10-25 10:46:09 +02:00
Kristaps Fabians Geikins ddea35e15b chore(server): easy js to ts migrations #1 2024-10-25 11:05:43 +03:00
Kristaps Fabians Geikins ca61e4f4a1 ip.ts 2024-10-25 10:51:48 +03:00
Gergő Jedlicska 9049d73489 feat(core): facelift taskLock 2024-10-24 23:07:47 +02:00
Gergő Jedlicska e05506b2a2 refactor(workspaces): use new commandFactory in workspace resolver 2024-10-24 21:58:01 +02:00
Gergő Jedlicska abb42a3da2 refactor(eventBus): remove return capabilities from the event bus 2024-10-24 19:54:37 +02:00
Gergő Jedlicska f6e804dfe7 feat(shared): add command pattern implementation 2024-10-24 19:27:44 +02:00
Kristaps Fabians Geikins 6d53308fd8 chore(server): gendo IoC #1 - prep/cleanup before getting started 2024-10-24 15:39:41 +03:00
Gergő Jedlicska 81b923cf67 feat(gatekeeper): upsize subscription on workspace role change 2024-10-24 10:03:08 +02:00
Kristaps Fabians Geikins 0e4e9958cd improved logging 2024-10-23 15:31:22 +03:00
Kristaps Fabians Geikins 34069a47ec fix(server): sign up emails sent out twice 2024-10-23 15:16:32 +03:00
Kristaps Fabians Geikins 5c30d4a5ab Merge pull request #3351 from specklesystems/fabians/sign-up-event-improvements
fix(server): more resilient sign up tracking
2024-10-23 10:16:26 +01:00
Chuck Driesler dc9519f141 fix(workspaces): emit slug with discoverable workspaces (#3361)
* fix(workspaces): emit slug with discoverable workspaces

* chore(workspaces): gql lint
2024-10-23 09:50:08 +01:00
Alessandro Magionami bed0fd60c6 Merge pull request #3373 from specklesystems/fabians/core-ioc-105
chore(server): core IoC #105 - remaining js rest to ts
2024-10-23 10:03:50 +02:00
Alessandro Magionami f6a87a4898 Merge pull request #3372 from specklesystems/fabians/core-ioc-104
chore(server): core IoC #104 - validatePermissionsWriteStreamFactory
2024-10-23 09:58:42 +02:00
Alessandro Magionami 9b5d935ccc Merge pull request #3371 from specklesystems/fabians/core-ioc-103
chore(server): core IoC #103  - validatePermissionsReadStream
2024-10-23 09:58:14 +02:00
Alessandro Magionami f073faf7b0 Merge pull request #3370 from specklesystems/fabians/core-ioc-102
chore(server): core IoC #102 - adminProjectListFactory
2024-10-23 09:34:31 +02:00
Alessandro Magionami 2cf9bee7e4 Merge pull request #3366 from specklesystems/alessandro/web-943-add-branch-deleted-activity
Activitystream IoC 4 addBranchDeletedActivity
2024-10-23 09:33:30 +02:00
Gergő Jedlicska f905c8f428 fix(gatekeeper): eliminate stripe client import sideeffect 2 2024-10-23 08:29:23 +02:00
Gergő Jedlicska 07be0e6b50 fix(gatekeeper): eliminate stripe client import sideeffect 2024-10-23 08:27:31 +02:00
Gergő Jedlicska 4ee7c4bc3d fix(gatekeeper): scope initialization 2024-10-22 23:36:46 +02:00
Gergő Jedlicska 50fff10acd feat(gatekeeper): handle cancelation and subscription updates 2024-10-22 23:17:22 +02:00
Iain Sproat 0ec4a87c7c fix(file import): server port was broken when localhost was canonical url (#3360)
* fix(file import): server port was broken when localhost was canonical url
- use getServerOrigin() instead of directly calling process.env.CANONICAL_URL
- where server is calling itself, use 127.0.0.1 instead of CANONICAL_URL.
- where server is calling itself (i.e. 127.0.0.1, use the server's listening port and not default for protocol http/80, https/443
- tidy some areas where process.env was called directly; should use envHelper.

* fix tests
2024-10-22 21:12:18 +02:00
Adam Hathcock 89882c4fd6 Add otel tracing (#3294)
* add OpenTelemetry

* fix local tracing and add pino

* fix otel as seperate file

* Rework provider initialization

* Use env vars

* review comments

* lock update

* updates to env var handling

* Helm chart for opentelemetry environment variables
- also adds try/catch when detecting if environment variable exists

* review fixes

---------

Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
2024-10-22 15:23:39 +01:00
Iain Sproat d48d9dfa1d chore(blobstorage): refactor to typescript (#3374) 2024-10-22 12:58:55 +01:00
Kristaps Fabians Geikins 913696cb0c chore(server): core IoC #105 - remaining js rest to ts 2024-10-22 12:52:14 +03:00
Kristaps Fabians Geikins 284d94f8ca chore(server): core IoC #104 - validatePermissionsWriteStreamFactory 2024-10-22 12:22:36 +03:00
Kristaps Fabians Geikins b128d13dbe chore(server): core IoC #103 - validatePermissionsReadStream 2024-10-22 12:16:04 +03:00
Kristaps Fabians Geikins 30371332d3 chore(server): core IoC #102 - adminProjectListFactory 2024-10-22 12:04:35 +03:00
Kristaps Fabians Geikins 049205e0cd chore(server): core IoC #101 - adminInviteListFactory 2024-10-22 11:57:36 +03:00
Kristaps Fabians Geikins 39f83d3e23 chore(server): core IoC #100 - legacyGetPaginatedStreamCommitsFactory rename 2024-10-22 11:41:42 +03:00
Kristaps Fabians Geikins f5213a12b7 chore(server): core IoC #99 - batchDeleteCommitsFactory 2024-10-22 11:39:09 +03:00
Gergő Jedlicska b9682577d7 feat(gatekeeper): add workspace plans gql api 2024-10-22 10:31:56 +02:00
Kristaps Fabians Geikins c90521f8d0 Merge pull request #3365 from specklesystems/alessandro/web-943-add-branch-updated-activity
Activitystream IoC 3 addBranchUpdatedActivity
2024-10-22 09:09:56 +01:00
Kristaps Fabians Geikins 88c714392c Merge pull request #3364 from specklesystems/alessandro/web-943-add-branch-created-activity
Activitystream IoC 2 addBranchCreatedActivity
2024-10-22 09:09:30 +01:00
Alessandro Magionami b701a3361c chore(activitystream): addBranchDeletedActivity refactor multiregion 2024-10-22 10:07:24 +02:00
Alessandro Magionami 0556e5593c Merge pull request #3358 from specklesystems/alessandro/web-943-add-reply-added-activity
Activitystream Ioc 1 addReplyAddedActivity
2024-10-22 10:05:29 +02:00
Alessandro Magionami 1dbb6ec978 Merge pull request #3356 from specklesystems/fabians/core-ioc-98
chore(server): core IoC #98 - hasObjectsFactory
2024-10-22 10:04:25 +02:00
Alessandro Magionami 78828017ab Merge pull request #3354 from specklesystems/fabians/core-ioc-97
chore(server): core IoC #97 - getObjectsStreamFactory
2024-10-22 10:03:52 +02:00
Alessandro Magionami 753ca62d72 Merge pull request #3353 from specklesystems/fabians/core-ioc-96
chore(server): core IoC #96 - delete getObjects
2024-10-22 10:03:26 +02:00
Alessandro Magionami c21295cbbf Merge pull request #3352 from specklesystems/fabians/core-ioc-95
chore(server): core IoC #95 - getObjectChildrenQueryFactory
2024-10-22 10:02:51 +02:00
Alessandro Magionami 282af83bd8 chore(activitystream): addBranchUpdatedActivity refactor multiregion 2024-10-22 09:53:36 +02:00
Alessandro Magionami a2e9693a6a chore(activitystream): addBranchCreatedActivity refactor multiregion 2024-10-22 09:52:47 +02:00
Alessandro Magionami 39277473dd Merge branch 'main' of github.com:specklesystems/speckle-server into alessandro/web-943-add-reply-added-activity 2024-10-22 09:49:05 +02:00
Gergő Jedlicska ee3b67a3a9 feat(gatekeeper): handle existing checkout sessions, when trying to create a new one 2024-10-21 19:18:22 +02:00
Gergő Jedlicska e9cdb7e970 feat(gatekeeper): cancel checkout session api 2024-10-21 18:13:58 +02:00
Alessandro Magionami 8502ac5db4 chore(activitystream): add missing deps 2024-10-21 17:58:16 +02:00
Alessandro Magionami 59663a81f9 chore(activitystream): addReplyAddedActivity refactor multiregion 2024-10-21 17:52:09 +02:00