* feat(workspaces): drop createdByUserId from the dataschema
* feat(workspaces): repositories WIP
* merge
* protect against removing last admin in workspace
* quick impl and stub tests
* add tests
* services
* unit tests for role services
* feat(workspaces): authorize project creation if workspace specified
* feat(workspaces): emit project created event
* fix(workspaces): protect against adding a project to a workspace if module not enabled
* fix(workspaces): oops broke tests during merge
---------
Co-authored-by: Gergő Jedlicska <gergo@jedlicska.com>
* feat(user-emails): create user emails table and type
* chore(user-emails): add delete cascade
* chore(user-emails): fix tests
* chore(user-emails): add unique constraint for email and userId
* chore(user-emails): use random email in tests
* chore(user-emails): add todo to remove user-email in test
* chore(user-emails): code review changes
* chore(user-emails): use random passwords for tests
* chore(user-emails): fix test and code review changes
* chore(serverinvites): repository refactor for multiregion
* chore(serverinvites): remove migrated functions from old repository
* chore(serverinvites): refactor serverInviteForToken resolver for multiregion
* chore(serverinvites): invite processing service refactor for multiregion
* chore(serverinvites): subscription refactor for multiregion
* chore(serverinvites): move buildEmailContents to dedicated file
* chore(serverinvites): deleteAllStreamInvites function multiregion refactor
* chore(serverinvites): refactor deleteServerOnlyInvites multiregion repository
* chore(serverinvites): complete repository refactor for multiregion
* feat(serverinvites): create domain module in server invites
* fix(serverinvites): no relative imports
* feat(serverinvites): extract individual types from repository
* feat(serverinvites): move interfaces to operations
* fix(serverinvites): update imports referencing old interfaces file
* fix(serverinvites): type mismatch for insert invite and delete old
* chore(serverinvites): refactor to single repo function
* test(serverinvites): fix tests
* fix(serverinvites): use domain types in all places
* feat(serverinvites): WIP unity
* feat(serverinvites): move to new facory names and types
* feat(serverinvites): fix tests
* fix(serverinvites): use factory name
---------
Co-authored-by: Alessandro Magionami <alessandro.magionami@gmail.com>
* chore(health): add dedicated liveness and readiness endpoints
- provides more flexibility in defining what constitutes readiness and liveness
* add tests for /liveness and /readiness
* Prevent liveness and readiness endpoints being exposed externally by redirecting their routes
* feat: optionally add userId to automate backend tracking
* fix: test should reference a version in triggeringId
* fix: use empty object ref for testing
* fighting migrations
* test automation type
* fix type in tests and add test
* split `storeAutomation` and `storeAutomationToken`
* add `createTestAutomation`
* fix test usage of `storeAutomation`
* do not trigger functions if automation is a test automation
* whoops
* create test automations, almost
* encryption keys on autoamation revisions are NOT optional
* function selection in create test automation step
* update tests, lint
* Align input stylings
Also update the general select input component so the placeholder text aligns with other inputs
* Explain test automation and tweak copy
* Update form components on parameters step
To align with the form component updates I made in previous commits in this branch
* create dialog enhancements
* test automation badges
---------
Co-authored-by: Benjamin Ottensten <benjamin.ottensten@gmail.com>