448 Commits

Author SHA1 Message Date
Iain Sproat 17c6f71ba5 feat(fe2 helm chart): allows nodejs inspect flag to be enabled (#3770) 2025-01-07 20:35:22 +00:00
Iain Sproat 457c532b2b feat(server): allow ratelimiting to be explicitly disabled (#3757)
* feat(server): allow ratelimiting to be explicitly disabled
- allows rate limiter to be enabled or disabled explicitly
- example .env file for testing now explicitly disables it
- disables rate limiter in CI tests, except where explicitly testing the rate limiter
2025-01-03 08:24:28 +00:00
Iain Sproat 571338c604 feat(feature flags): consolidate multi region & multi region blob storage (#3709) 2024-12-18 15:28:19 +00:00
Iain Sproat 0115e654b7 feat(database monitor): handles multi-region and connection pooling (#3685) 2024-12-17 09:36:39 +00:00
Iain Sproat c4def81ae2 feat(server options): allow connection timeouts to be configured (#3701)
* feat(server options): allow connection timeouts to be configured

* feat(postgres config): allow connection parameters to be configured
2024-12-16 13:39:40 +00:00
Iain Sproat 298e0977de fix(helm chart): set a default value in Helm Chart for workspacesMultiRegionBlobStorageEnabled feature flag (#3645) 2024-12-05 14:04:48 +00:00
Iain Sproat 9b1b1dfb71 feat(server/feature flags): adds multi-region blob storage ff (#3643) 2024-12-05 15:13:34 +02:00
Iain Sproat cdf9c4858a refactor(env vars): rename AUTOMATE_ENCRTYPTION_KEYS_PATH with ENCRYPTION_KEYS_PATH (#3616) 2024-12-04 10:29:35 +00:00
Iain Sproat 3b51fc6d8d fix(helm chart): consistent spelling of workspaces (#3595) 2024-12-02 19:26:41 +01:00
Adam Hathcock 1ac972f02a feat(file imports): adds an experimental IFC parser (#3525)
* first pass of CLI ifc converter

* some updates

* closer

* yarn works

* can execute ifc?

* change exe

* remove extra venv needs

* invocation works

* fixed dockerfile and url

* refactor(fileimport): temp results path should not be hardcoded in parsers

* update importer to output stuff

* fix up argments

* remove dead code

* adjust dockerfile to have tini and workdir better

* fix node to a specific version

* Add shell statement and pin yarn version

* add ifc converter c# to ignore

* merge fix

* move ifc c#

* fix the api usage

* update the importer to new SDK

* Adds a feature flag `FF_FILEIMPORT_IFC_DOTNET_ENABLED` for enabling .Net IFC parser

* move directories

* put back ifc js

* use FF and reversions

* needs token too

* fix docker?

* one last copy fix

* adjust prettier ignore

* change to enable

* fix helm chart nesting

* Amend healthcheck node binary path

* Add FF_FILEIMPORT_IFC_DOTNET_ENABLED to feature flag parser

* Allow app to write to /.config directory

* fix: volume name has to be lower case

* update ifc importing

---------

Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
Co-authored-by: root <root@Clynelish>
2024-11-29 06:34:08 +01:00
Iain Sproat c841bb45f2 fix(helm chart): add Gendo feature flag to frontend-2 (#3563) 2024-11-26 20:49:10 +00:00
Iain Sproat 5f1e0a0b36 fix(helm chart): allow service account access to gendo secret (#3560) 2024-11-26 18:07:11 +01:00
Iain Sproat 506ecf33fd fix(helm chart): capitalization of gendoAI (#3557) 2024-11-26 15:27:49 +00:00
Iain Sproat d8b828f565 fix(feature flag): align spelling of feature flags (#3556)
- workspace is plural in other feature flags
2024-11-26 14:56:50 +00:00
Gergő Jedlicska 01b222ced8 gergo/web 2155 gendo module multi region (#3528)
* fix(workspaces): allow workspace delete for paid workspaces

* feat(gendo): multi region gendo with new api integration and limits

* feat(gendo): user credits

* feat: adds limits to gendo panel, and terms and conditions link

* fix: reworks setting back camera view

* feat(gendo): webhook signature verification

* fix(gendo): nullability

* test(blobstorage): fix test dependency injection

---------

Co-authored-by: Dimitrie Stefanescu <didimitrie@gmail.com>
2024-11-22 16:43:31 +01:00
Iain Sproat 01450de54d fix(helm chart): root is read-only so mount volume to specific directory (#3458)
* fix(helm chart): mount correct path

* fix(helm chart): root is read-only so mount volume to specific directory
2024-11-07 14:20:05 +01:00
Iain Sproat a80e515d12 fix(helm chart): provide service account with access to multi-region (#3457) 2024-11-07 12:35:25 +00:00
Iain Sproat 05ba9ee8e6 feat(helm chart): include multi-region feature flag and mount volume from secret (#3453)
* feat(helm chart): include multi-region feature flag and volume from secret

* fix monitoring deployment template

* Add environment variables to all services
2024-11-07 10:11:48 +00:00
Iain Sproat 8d72d50d45 fix(helm chart): secret path must be relative and not absolute (#3449) 2024-11-06 20:14:52 +00:00
Gergő Jedlicska f210d9b749 gergo/web 2109 project region based db connection selector (#3434)
* feat(projects): add project regions, default to null

* feat(multiregion): add projectRegion Db client lookup logic

* feat(multiregion): add project region repositories and caching

* feat(multiRegion): db initialization and get project db client

* feat(docker-compose): add second db for regions testing

* feat(multiRegion): initialize region with pubs and subs working

* fix(multiRegion): get region client even if it was registered in another pod

* feat(workspaces): create workspace resolver split

* feat: update server region metadata

* feat(projects): rewrite project creation

* feat(multiRegion): getRegionDb

* fix(workspaces): get projects now can retur null

* feat(multiRegion): make local multi region DB-s work

* feat: set d efault workspace region

* CR changes

* tests

* feat(multiRegion): bind region properly

* fe update

* test fixes

* feat(multiRegion): automatically create aiven extras plugin

* ci(postgres): use published postgres with aiven extras

* fix(multiRegion): roll back the aiven extras migration, there is a better way

* tests fix

* fix(billing): we do not need to add a seat, if the workspace is on a plan, but has no sub

---------

Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-11-06 17:29:08 +01:00
Iain Sproat 395202ddfb chore(helm chart): remove obsolete Makefile (#3439)
- replaced with Tilt deployment in .circleci directory
2024-11-05 10:11:05 +00:00
Iain Sproat 8ea43d7b98 feat(server/multi region config): mount file and read config from file (#3407)
* feat(multi region config): mount file and read config from file
* feat(helm): allow multi region config to be mounted from a secret
* Allow the file name to be amended
2024-10-30 10:59:03 +00:00
andrewwallacespeckle def74d1029 Update deployment.yml (#3381) 2024-10-23 11:52:15 +01:00
andrewwallacespeckle ce37f9592d Update api key name for consistency (#3380) 2024-10-23 10:38:54 +01: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
andrewwallacespeckle 083531e5c9 refactor(fe2): Use webflow api for dashboard stories (#3342)
* Initial work

* fallback image

* Update api name

* Add read time

* Filter out newly updated stories

* Update webflow.ts

* Add NuxtImg

* Update webflow.ts

* Update Card.vue

* Rename to Webflow Items

* Helm changes

* Rename webflow to blog

* useAsyncData

* Throw error if no API
2024-10-22 14:58:31 +01:00
Gergő Jedlicska ddcaff3b72 fix(helm): stripe price id refs (#3355) 2024-10-21 16:38:27 +02:00
Gergő Jedlicska c2df98783e gergo/fixHelmChart (#3350)
* fix(helm): stripe secret refs again

* fix(helm): stripe secret refs again
2024-10-21 15:44:55 +02:00
Gergő Jedlicska 5b8ec1bd14 feat(helm): configure stripe secrets from the helm chart (#3348)
* feat(helm): configure stripe secrets from the helm chart

* fix(helm): stripe secret refs
2024-10-21 14:07:41 +02:00
Gergő Jedlicska 6a3e63c8df feat(helm): add gatekeeper module feature flag (#3346) 2024-10-20 17:02:24 +02:00
Gergő Jedlicska 8cba7eb6f7 gergo/web 1968 add features list (#3332)
* 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
2024-10-20 15:40:31 +02:00
Iain Sproat b85cfe44ad Revert "fix(helm chart): service account secrets only includes unique value (#3275)" (#3289)
This reverts commit ef25428bd8.
2024-10-15 12:29:55 +01:00
Iain Sproat ef25428bd8 fix(helm chart): service account secrets only includes unique value (#3275)
- this makes the chart more robust and the behaviour can be determined at template time
- previously, the unique values were removed by kubernetes which made modification difficult
2024-10-15 10:12:55 +01:00
Iain Sproat 8860f76a6f chore(deprecate FE1): update urls to point to *.speckle.systems (#2515)
* chore(deprecate FE1): update urls to point to *.speckle.systems

* Revert change to urlhelper.ts

* Update the logo in the helm chart
2024-10-14 19:30:00 +01:00
Kristaps Fabians Geikins 7d9c4c0935 feat(root): streaming ensure tailwind deps output (#3232) 2024-10-10 17:22:31 +03:00
Kristaps Fabians Geikins 1b7bfd1419 feat(root): improved ensure tailwind deps reporting (#3226) 2024-10-10 15:39:16 +03:00
Gergő Jedlicska 0ad4fa9bff feat(workspaces): add workspace sso feature flag (#3084) 2024-09-24 10:59:06 +02:00
Iain Sproat a22a350627 chore(dockerfile): move to distroless (#2885) (#2897)
* Reapply "chore(dockerfile): move to distroless  (#2885)" (#2888)

This reverts commit 9d8cd0f351.

* Fix startup probe for objects pods
2024-09-06 09:43:35 +01:00
Iain Sproat 206b2368ba fix(preview-service): listen externally on metrics port (#2893) 2024-09-05 16:50:23 +01:00
Iain Sproat 9d8cd0f351 Revert "chore(dockerfile): move to distroless (#2885)" (#2888)
This reverts commit a1a3428737.
2024-09-05 15:03:47 +01:00
Iain Sproat a1a3428737 chore(dockerfile): move to distroless (#2885)
* chore(dockerfile): move to distroless
- remove unnecessary env vars (these are provided via the deployment system)
- uses relative paths if in a working directory

* Amend entrypoint for use with distroless

* Update startup probe & docker compose readiness probe
2024-09-05 14:28:26 +01:00
Iain Sproat 9db95f3471 fix(preview service): healthcheck timeout should be string format (#2872) 2024-09-04 14:08:56 +01:00
Iain Sproat 9a28e467ba refactor(preview-service): conforms to design patterns, adds tests, and is typed (#2429)
Co-authored-by: Kristaps Fabians Geikins <fabis94@live.com>
2024-09-04 13:06:23 +01:00
Iain Sproat d2f198a28b fix(helm chart): the objects service account should match server service account (#2822)
- the environment variables are shared between the two, so service accounts must match
2024-08-30 10:48:51 +02:00
Iain Sproat 131918b428 fix(server): default max multi-part file upload greater than objects (#2742)
- when sending Speckle objects to the server, they are batched into multi-part files
- a multi-part file therefore contains one or more Speckle objects
- the maximum limit for the multi-part file must therefore be greater than the maximum limit for a single Speckle object
2024-08-26 16:42:33 +01:00
Iain Sproat 26b0ecb55d chore(server): remove sentry and only apply mixpanel middleware if enabled (#2732)
- remove sentry as we are no longer using it
- only enable mixpanel middleware if mixpanel is enabled
2024-08-23 16:56:54 +01:00
Iain Sproat 1992b7a5e9 fix(helm chart): remove confusing duplicate max_object_size_mb property (#2707) 2024-08-20 14:17:33 +01:00
Iain Sproat 97321fd80e Increase max object size default to 100Mb for helm chart (#2692) 2024-08-19 20:25:36 +01:00
Iain Sproat afe1d1947f fix(helm chart): indentation typo (#2662) 2024-08-14 14:44:54 +01:00
Iain Sproat 9896d49058 fix(helm chart): server service account should have access to license token secret (#2661) 2024-08-14 15:16:31 +02:00