Commit Graph

76 Commits

Author SHA1 Message Date
Kristaps Fabians Geikins bde148f286 chore(server): migrating fully to ESM (#5042)
* wip

* some extra fixes

* stuff kinda works?

* need to figure out mocks

* need to figure out mocks

* fix db listener

* gqlgen fix

* minor gqlgen watch adjustment

* lint fixes

* delete old codegen file

* converting migrations to ESM

* getModuleDIrectory

* vitest sort of works

* added back ts-vitest

* resolve gql double load

* fixing test timeout configs

* TSC lint fix

* fix automate tests

* moar debugging

* debugging

* more debugging

* codegen update

* server works

* yargs migrated

* chore(server): getting rid of global mocks for Server ESM (#5046)

* got rid of email mock

* got rid of comment mocks

* got rid of multi region mocks

* got rid of stripe mock

* admin override mock updated

* removed final mock

* fixing import.meta.resolve calls

* another import.meta.resolve fix

* added requested test

* nyc ESM fix

* removed unneeded deps + linting

* yarn lock forgot to commit

* tryna fix flakyness

* email capture util fix

* sendEmail fix

* fix TSX check

* sender transporter fix + CR comments

* merge main fix

* test fixx

* circleci fix

* gqlgen bigint fix

* error formatter fix

* more error formatting improvements

* esmloader added to Dockerfile

* more dockerfile fixes

* bg jobs fix
2025-07-14 10:26:19 +03:00
Chuck Driesler 18d8ccaae7 fix(automate): set default input values in function input form (#4728) 2025-05-14 14:09:06 +01:00
Chuck Driesler 6d33de50d1 fix(automate): return null if not a function (#4716) 2025-05-13 09:00:39 +01:00
Chuck Driesler e64e77cd6d fix(automate): filter out deleted automation runs (#4717) 2025-05-13 08:59:10 +01:00
Chuck Driesler 848f04d861 feat(automate): create test automations without functions (#4657)
* feat(automate): test automations without functions (almost)

* fix(automate): drop function select from test automation creation

* fix(automate): partial test automation panel

* feat(automate): environment configuration in test automation

* fix(automate): closer fit rows

* fix(automate): create test automation runs without functions
2025-05-06 10:48:21 +01:00
Chuck Driesler 44a20b3af1 fix(automate): throw better if automation not found in gql (#4669) 2025-05-06 10:41:51 +01:00
Chuck Driesler b553c48358 fix(automate): do not return invalid type for revisions (#4658) 2025-05-02 18:28:36 +01:00
Chuck Driesler 7663321557 fix(authz): add canDelete policy for automations (#4554)
* fix(authz): add canDelete policy for automations

* fix(authz): use asOperation
2025-04-23 10:02:59 +01:00
Chuck Driesler 5c68f8a1da feat(automate): ability to delete automations (#4228)
* feat(automate): delete automation be

* feat(automate): delete automations fe

* fix(automate): delete modal, update cache

* chore(automate): minor formatting

* fix(automate): delete blobs w automations

* chore(automate): repair blob test

* fix(automate): make sure to return

* fix(automate): do soft delete

* fix(automate): include deleted filter in project automation queries
2025-04-22 20:22:44 +01:00
Chuck Driesler 3e0f609bb2 fix(automate): improve search for test automations (#4515) 2025-04-22 14:33:46 +01:00
Björn Steinhagen 727494f8d1 feat(automate): improve font rendering in function readme (#4514)
* mock start

* some evil markdown

* fix(automate): use prose styles

* fix: improve markdown rendering in GitHub README

- inline code styling with proper background, border, and padding
- improved list formatting for both ordered and unordered lists
- horizontal scrolling with custom scrollbar for code blocks

---------

Co-authored-by: Charles Driesler <chuck@speckle.systems>
2025-04-21 18:20:32 +01:00
Chuck Driesler d7aa0196fc feat(authz): automate policies (#4491) 2025-04-18 11:03:54 +02:00
Iain Sproat a50e053096 chore(server/logging): add operation logging to automate module
- tidy up some passing of loggers to automate
- do not use console.log, instead use @/observability/logging
2025-04-15 11:37:06 +01:00
Iain Sproat 04f84c31f3 fix(server/automate): logger should have request context and request ID sent to execution engine (#4092)
* fix(server/automate): logger should have request context

* WIP - pass in request Id

* WIP

* fix(automate): better logging for automate processes

* chore(automate): slight log improvement

* fix(automate): just in case

---------

Co-authored-by: Charles Driesler <chuck@speckle.systems>
2025-02-28 18:22:00 +00:00
Chuck Driesler 3cc68bb0e2 feat(automate): use updated hybrid function search (#4085)
* fix(automate): use new function query for workspace functions

* fix(automate): include workspace resource claims in auth flow

* chore(automate): do not use btoa
2025-02-28 16:03:34 +00:00
Chuck Driesler f2ce7d8f17 chore(automate): track usage of test automations (#3992)
* chore(automate): track usage of test automations

* fix(automate): consolidate mixpanel event
2025-02-18 11:37:56 +00:00
Chuck Driesler 272c136a17 WEB-2466 fix(automate): include workspace in function breadcrumb (#3926)
* fix(automate): repair workspace function breadcrumb

* fix(automate): use route helper correctly
2025-02-04 09:58:45 +00:00
Iain Sproat c59e6043bb fix(server/errors): derive errors from BaseError (#3918) 2025-01-30 18:15:56 +01:00
Chuck Driesler 4cbeeef0d0 Automate API Circuit breaker (#3914)
* fix(automate): invokeSafeJsonRequest

* fix(automate): correct fallback values
2025-01-30 15:26:12 +00:00
Chuck Driesler 928cc306ed chore(automate): function input mocks (#3870)
* chore(automate): function input mocks

* chore(automate): use mocks helpers

* chore(automate): appease ts

* fix(automate): use mock cache utils
2025-01-24 10:36:00 +00:00
Chuck Driesler 5fa5e22ff9 chore(automate): mocks for new function queries (#3848) 2025-01-20 15:16:36 +01:00
Kristaps Fabians Geikins 8df7eb714b chore(server): getting rid of module-scoped eventBuses - batch #5 - automations & runs [final] (#3818)
* chore(server): getting rid of module-scoped eventBuses - batch #4 - comments

* chore(server): getting rid of module-scoped eventBuses - batch #5 - automations

* chore(server): getting rid of module-scoped eventBuses - batch #5 - automation runs
2025-01-15 11:00:33 +02:00
Kristaps Fabians Geikins 8d0cbad8b6 feat(server): multi region blob support (#3653)
Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
2024-12-10 09:05:18 +00:00
Chuck Driesler e312110933 Automate Public Beta (#3472)
* feat(automate): query active user functions

* fix(automate): show automations to non-stream-owners

* feat(automate): associate function with workspace

* fix(automate): split functions page between user and example functions

* fix(automate): ugh

* fix(functions): use correct query type in different places

* fix(automate): workspace functions page

* feat(automate): query specific categories of functions

* fix(automate): checkpoint

* fix(workspaces): successful queries w local env

* fix(automate): createFunctionWithoutVersion

* fix(automate): successful associate function with workspace

* fix(automate): query and return workspaces on functions

* fix(automate): show current function workspace

* fix(automate): query functions in automation create dialog

* fix(automate): audit non-owner automation access

* refactor(automate): logs api can get the projectId from the path

* fix(automate): multiregion gql resolvers

* fix(automate): multiregion event listeners

* fix(automate): drop automationCount

* fix(automate): multiregion run status

* fix(automate): correctness

* fix(automate): successful usage of multiregion results

* fix(automate): actually finish event listeners

* chore(automate): fix tests fix tests

* fix(automate): fix tests but make it multiregion flavor

* fix(automate): logs endpoint

* fix(automate): inject projectid correctly

* fix(automate): drop user-source functions

* fix(automate): owners edit, others can view

* fix(automate): simplify queries, auto workspace association

* chore(automate): appease

* chore(automate): fix function types

* fix(automate): get to workspace functions from empty state

* chore(automate): death to all slugs

* fix(automate): no create automation from function

* fix(automate): hide workspace change, tweak role access

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-11-29 17:33:14 +01:00
Chuck Driesler fd5f316af0 fix(automate): automate module multi region (#3531)
* refactor(automate): logs api can get the projectId from the path

* fix(automate): multiregion gql resolvers

* fix(automate): multiregion event listeners

* fix(automate): drop automationCount

* fix(automate): multiregion run status

* fix(automate): correctness

* fix(automate): actually finish event listeners

* chore(automate): fix tests fix tests

* fix(automate): fix tests but make it multiregion flavor

* fix(automate): logs endpoint

* chore(automate): globalDb to db

* fix(automate): inject projectid correctly

* fix(automate): debug log fetch failure

* chore(automate): fix tests for new message

---------

Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
2024-11-27 15:26:09 +00:00
Gergő Jedlicska fcb8dd275a fix(automate): some gql generation mixup 2024-11-11 10:40:28 +01:00
Gergő Jedlicska b77d70585e fix(redis): make redis client singleton from a module (#3469)
* fix(redis): make redis client singleton from a module

* fix(projectDownload): pass region key properly
2024-11-08 17:18:28 +01:00
Kristaps Fabians Geikins 8abc801bae chore(server): core IoC #71 - createAppTokenFactory 2024-10-16 16:59:54 +03:00
Kristaps Fabians Geikins 1cb27e6fdd chore(server): core IoC #51 - getUser(s)Factory 2024-10-14 17:24:11 +03:00
Kristaps Fabians Geikins 6cb5022ac4 chore(server): IoC 35 - updateStreamRoleAndNotify 2024-10-09 16:31:20 +03:00
Kristaps Fabians Geikins 972af78fce chore(server): core IoC 13 - getCommit(s)Factory 2024-09-27 14:02:29 +03:00
Kristaps Fabians Geikins b2459e84e9 chore(server): core IoC 5 - getBranchLatestCommitsFactory 2024-09-26 15:48:07 +03:00
Kristaps Fabians Geikins 168a22a9ac chore(server): core IoC 3 - getBranch(es)byIdFactory 2024-09-26 14:43:55 +03:00
Kristaps Fabians Geikins cc6f7fd739 chore(server): automate IoC 16 - Project.automations 2024-09-23 13:56:55 +03:00
Kristaps Fabians Geikins 3863016620 chore(server): automate IoC 15 - Automation.runs 2024-09-23 13:51:46 +03:00
Kristaps Fabians Geikins 7f222cdc0f chore(server): automate IoC 14 - dataloaders 2024-09-20 16:00:05 +03:00
Kristaps Fabians Geikins b47338b50c chore(server): automate IoC 12 - createTestAutomationRunFactory 2024-09-20 15:41:09 +03:00
Kristaps Fabians Geikins 0368f9b792 fixx 2024-09-20 15:31:34 +03:00
Kristaps Fabians Geikins ad41264764 chore(server): automate IoC 11 - manuallyTriggerAutomationFactory 2024-09-20 15:29:23 +03:00
Kristaps Fabians Geikins dac45a618b fixx 2024-09-20 15:26:14 +03:00
Kristaps Fabians Geikins 9fe2033051 chore(server): automate IoC 10 - onModelVersionCreateFactory 2024-09-20 15:19:15 +03:00
Kristaps Fabians Geikins 20292cc5c1 chore(server): automate IoC 9 - setupRunFinishedTrackingFactory 2024-09-20 14:58:03 +03:00
Kristaps Fabians Geikins 6121893fe9 chore(server): automate IoC 7 - reportFunctionRunStatusFactory 2024-09-20 13:55:11 +03:00
Kristaps Fabians Geikins aad7128296 chore(server): automate IoC 6 - functionManagement cleanup 2024-09-20 13:42:29 +03:00
Kristaps Fabians Geikins 1ab0db422e chore(server): automate IoC 5.5 - encryption service cleanup 2024-09-20 13:39:08 +03:00
Kristaps Fabians Geikins 566d1f1977 chore(server): automatie IoC 5 - getAutomationsStatusFactory 2024-09-20 13:33:50 +03:00
Kristaps Fabians Geikins 7bc2481c43 chore(server): automatie IoC 4 - createAutomationRevisionFactory 2024-09-20 13:28:54 +03:00
Kristaps Fabians Geikins 307b688ce5 minor adjustment 2024-09-20 13:22:57 +03:00
Kristaps Fabians Geikins 7c365bf56e chore(server): automate IoC 3 - validateAndUpdateAutomationFactory 2024-09-20 13:21:37 +03:00
Kristaps Fabians Geikins 5ed334b554 minor adjustment 2024-09-20 13:21:11 +03:00