Commit Graph

69 Commits

Author SHA1 Message Date
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
Kristaps Fabians Geikins 6791b36289 chore(server): automate IoC 2 - createTestAutomationFactory 2024-09-20 13:18:16 +03:00
Kristaps Fabians Geikins 80265890a0 minor adjustment 2024-09-20 13:17:46 +03:00
Kristaps Fabians Geikins 8a64e24eff chore(server): automate IoC 1 - createAutomationFactory 2024-09-20 12:42:28 +03:00
Kristaps Fabians Geikins 1e5dadacd3 feat(server): modularized mocks + workspace mocks for Mike (#2534)
* modularized mocks foundation + updated workspaces gql

* base queries done

* mutations done

* cleaner API for mock helpers

* greatly improved mock definition DX
2024-07-29 11:21:59 +03:00
Kristaps Fabians Geikins 689bb4e941 feat: function update flow re-introduced (#2410) 2024-06-20 12:24:15 +03:00
Kristaps Fabians Geikins eff46485c4 feat(server): generalized automate auth code handshake mechanism (#2360)
* feat(server): generalized automate auth code handshake mechanism

* amend API requests to match with changes in https://github.com/specklesystems/speckle-automate/pull/758

* fix test

* integration fix

* deleting auth code on verification

---------

Co-authored-by: Iain Sproat <68657+iainsproat@users.noreply.github.com>
2024-06-17 17:12:17 +03:00
Kristaps Fabians Geikins 83d8035dc2 chore: upgrade to eslint 9 (#2348)
* root + server

* frontend

* frontend-2

* dui3

* dui3

* tailwind theme

* ui-components

* preview service

* viewer

* viewer-sandbox

* fileimport-service

* webhook service

* objectloader

* shared

* ui-components-nuxt

* WIP full config

* WIP full linter

* eslint projectwide util

* minor fix

* removing redundant ci

* clean up test errors

* fixed prettier formatting

* CI improvements

* TSC lint fix

* 'buildBatch' needs to be async since some batch types (like Text) require it. Removed a disabled liniting rule from ObjLoader

* removed unnecessary void

---------

Co-authored-by: AlexandruPopovici <alexandrupopoviciioan@gmail.com>
2024-06-12 14:38:02 +03:00