mike12345567
c2793ede4c
Properly supporting the new global builder permission type to deny access to app creation.
2023-07-26 17:48:35 +01:00
mike12345567
64a5426d36
Updates to remove app builder concept, denying access to app creation for app builders.
2023-07-26 17:32:21 +01:00
mike12345567
3abe5d4cb2
Frontend work to support logging in as an app builder - also making sure when a new app is created that the user is assigned app access to it.
2023-07-20 18:34:12 +01:00
mike12345567
85dea47a31
Moving user admin/builder functions to shared-core for frontend to use.
2023-07-19 16:19:34 +01:00
mike12345567
91847504c8
Adding test cases for admin/builder checking middlewares.
2023-07-18 18:10:15 +01:00
mike12345567
39746e0bf0
Main body of work to handle the new approach of per app builders support.
2023-07-18 16:57:48 +01:00
Adria Navarro
2698e47ec4
Type internal db.get
2023-07-18 11:41:51 +02:00
Dean
602ea9bc4e
General tidying and refactoring. Updated the publish button behaviour to also take into account revert and version update behaviours.
2023-06-20 12:33:18 +01:00
mike12345567
1bdf55e966
Some type updates and fixes for test case.
2023-06-13 14:45:33 +01:00
mike12345567
bedc8e5cce
Fix for custom roles that have not been published causing users to be unable to access an app completely. They should instead be treated as public users as their role isn't valid.
2023-06-12 18:39:30 +01:00
mike12345567
7c7bd4d5cb
Fix for debugging with webstorm the old way (if desired), updating the builder middleware to be more multi-dev capable, ignoring 409s when attempting to update the last updated at for apps (if multiple devs hit at same time, only use one) also updating writethrough cache to retry once, with the extended TTL on locks, plus the multi-dev collab it can take a minute to update usage quota doc when a lot of updates occur at once.
2023-05-30 17:41:20 +01:00
Andrew Kingston
7f96fbf741
Remove single user restriction and notify users if they are the primary builder or not
2023-05-12 13:55:08 +01:00
adrinr
6a257bf9c3
Tweak tests
2023-03-31 09:01:40 +01:00
adrinr
48b964378b
Remove all app cookie references (not really needed anymore)
2023-03-31 09:01:40 +01:00
Michael Drury
669c4ebd5c
Fix for currentapp build issue.
2023-03-22 17:46:37 +00:00
Rory Powell
4b85583f5f
Update builder and authorized middleware to be more strict towards unauthenticated ( #9774 )
...
* Update builder and authorized middleware to be more strict towards unauthenticated
* Remove unnecessary variable
2023-02-22 13:39:31 +00:00
Adria Navarro
24f8f3a7cb
Fix currentapp middleware to allow app_ parameters
2023-01-12 15:38:22 +00:00
Rory Powell
fba7ef26ad
Replace ts-jest with swc/jest ( #9289 )
...
- Add swc dependencies
- Add transform change to jest.config.ts
- Replace `export =` with `export default` in src code to enable code coverage to work with swc transformer
- Restructure backend-core errors package to allow for exporting error classes with ESM syntax
- Update backend-core to no longer use `export =`, export individual packages instead of replacing with `export default` for backwards compatibility
- Update event publishers to use `export default` - this was required for the `jest.spyOn` usage inside backend-core common mocks
- Restructure some jest.mock usages where declaring the jest.fn as a variable outside of the package mock threw an error
2023-01-11 09:37:37 +00:00
mike12345567
514f9a1210
Some fixes based on test runs.
2022-11-23 11:44:15 +00:00
mike12345567
de82eca502
Some typescript conversions, moving a few imports around.
2022-11-21 18:33:34 +00:00
mike12345567
31c198888a
Updating some enums, plural to single.
2022-11-17 14:59:18 +00:00
mike12345567
58e59bfacc
Updating PouchLike to be an interface in types, with its impl stored in backend-core, now called Database.
2022-11-17 14:35:03 +00:00
mike12345567
bc857d7bb8
PR comments - still experiencing build issues.
2022-11-17 13:31:54 +00:00
mike12345567
4328ed1b67
Updating middlewares to Typescript, as well as some fixes based on running tests.
2022-11-16 17:24:13 +00:00
mike12345567
535fab7997
Some major reworks towards higher levels of typescript.
2022-11-16 17:23:12 +00:00
mike12345567
c6366c573a
Final server test fixes, after all updates to context/removal of context faking.
2022-11-15 19:04:39 +00:00
mike12345567
b5472f882b
Some updates for currentapp.spec.js test case.
2022-11-15 17:35:17 +00:00
mike12345567
72c9aadae0
Updating test cases - trying to get everything in order for merge.
2022-11-14 20:25:05 +00:00
mike12345567
c63c3b48c5
Typescript conversions, as well as updating context to just use an object map.
2022-11-10 17:38:26 +00:00
mike12345567
45e7ef61ef
Re-building the context module to use a single object, meaning we can create new context frames and copy over whatever exists, then update.
2022-11-10 16:38:32 +00:00
mike12345567
e3f054470a
Updating a few core endpoints to better integrate the groups system and make sure users always have the correct role ID updated onto them.
2022-09-22 18:27:43 +01:00
Rory Powell
276c455a11
Merge branch 'develop' into feature/day-pass-pricing
2022-09-01 15:26:16 +01:00
Rory Powell
7c2c4a0f94
Add conditional around joiValidator schema.append
2022-08-31 12:24:12 +01:00
Rory Powell
8fc8308530
Merge branch 'develop' into feature/day-pass-pricing
2022-08-19 14:08:03 +01:00
mike12345567
b803a3fd93
Replacing all plural TS enumerations with singular - this involves a major rename of the DocumentTypes.
2022-08-11 13:50:05 +01:00
Peter Clement
723bbd65e4
fixing bug on multi tenant environment
2022-07-22 10:12:16 +01:00
Rory Powell
3820182359
Write users and activity to dynamo
2022-07-18 16:11:52 -04:00
Andrew Kingston
b5d635c83f
Merge branch 'develop' of github.com:Budibase/budibase into new-design-ui
2022-06-15 15:32:33 +01:00
Dean
0561c17b6c
Joi validator update to accomodate 'createdAt' and 'updatedAt' in the schema as optional
2022-06-14 12:34:15 +01:00
Andrew Kingston
2b594b09c2
Delete user builder and admin flags when specifying a custom role via dev tools
2022-06-09 14:26:56 +01:00
Dean
8131b8fcaa
Overview Tab refactoring and general updates to the homepage
2022-05-06 15:52:49 +01:00
Dean
5104631d20
Initial Commit for app overview
2022-05-05 12:52:17 +01:00
mike12345567
bcee277acb
Fixing issue with db init as part of the jest require.
2022-04-26 18:28:37 +01:00
Rory Powell
3991f25c5c
Test fixes
2022-04-26 15:07:21 +01:00
Martin McKeaveney
9ca4dacbaa
merge with master
2022-04-26 10:21:45 +01:00
mike12345567
345bbf603c
Fixing issues with test cases - a lot of test cases didn't setup tenancy in any format, which now means that the API endpoints they call would not have access to a Global DB instance. Also had to disable the closing of the database in test as this was removing the database from memory, meaning future calls would find an empty database when they opened it.
2022-04-21 14:56:14 +01:00
Rory Powell
d2a4e0a934
Merge branch 'develop' into feature/licensing
2022-04-20 14:59:36 +01:00
mike12345567
192fb1307e
Initial version of memory leak protection, making sure that PouchDB databases are closed correctly after use, using a combination of closures wrapping DB gets (this replaces the getDB, leaving only a dangerousGetDB function which can be used in very very specific scenarios) and then closing the DB as part of CLS hooked functions finishing. Also moving the GlobalDB init to the tenancy middleware as this is used everywhere in the worker/app services - means that not all getGlobalDB calls require an async closure around them.
2022-04-19 19:42:52 +01:00
Rory Powell
41144db055
Remove remaining direct usage of CouchDB. Add common pouch config to backend-core
2022-04-19 16:45:27 +01:00
Rory Powell
d87714107d
Add checkout pro step to budibase-ci
2022-04-13 21:13:01 +01:00
Rory Powell
03ba6d914f
Merge branch 'develop' into feature/licensing
2022-04-12 16:18:41 +01:00
Andrew Kingston
7546c1a8d5
Fix for tests when headers are undefined
2022-04-06 14:11:05 +01:00
Andrew Kingston
34a0c77d73
Tidy up
2022-04-06 13:40:07 +01:00
Andrew Kingston
c2d61d8ebc
Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-devtools
2022-04-06 11:50:43 +01:00
mike12345567
88437e11d0
Fix for #5103 - some templates are built on an older version that stored permissions differently, we can't migrate these as they will keep being added, easiest to just support the old method (apply the old rule and convert to the new format when retrieving roles).
2022-03-28 16:34:50 +01:00
Rory Powell
819f9b75de
Link app context with tenancy, remove app tenancy middleware
2022-03-24 13:04:49 +00:00
Rory Powell
a68abf2730
Fix cross tenant apps with session
2022-03-23 16:45:06 +00:00
Rory Powell
0a4b1eb552
Tests complete + backwards compatibility for deployment
2022-03-22 00:23:22 +00:00
Rory Powell
715d42d3e6
Merge branch 'develop' into feature/licensing
2022-03-21 17:13:16 +00:00
Rory Powell
795b48bfb0
Published apps, automations and query count quotas
2022-03-20 01:13:54 +00:00
Rory Powell
661367333d
Add developer usage restrictions to SSO user creation
2022-03-18 08:01:31 +00:00
Rory Powell
e695a57853
Better error handling around license errors
2022-03-16 17:29:47 +00:00
mike12345567
ba9d6cf8f7
Fixing an issue that was breaking build.
2022-03-15 19:53:05 +00:00
mike12345567
d48d7f6e19
Quick fix for #4914 - adding some checks in API middleware to confirm headers have been set correctly.
2022-03-15 19:31:01 +00:00
Rory Powell
7698e9293c
Self Host <-> Licensing integration
2022-03-09 21:16:22 +00:00
Rory Powell
eefe4ea2ad
Integrate usage quotas with licensing
2022-03-08 14:21:41 +00:00
Andrew Kingston
c944d1fdf5
Update devtools with new features
2022-02-24 15:36:21 +00:00
Andrew Kingston
2461df61cb
Fix bad import of headers constants
2022-02-24 14:14:39 +00:00
Andrew Kingston
66715b8290
Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-devtools
2022-02-24 14:03:29 +00:00
mike12345567
476f34fb93
Merge branch 'develop' of github.com:Budibase/budibase into lab-day/refactor-app-db
2022-01-31 17:16:59 +00:00
mike12345567
e718b18127
Merge branch 'develop' of github.com:Budibase/budibase into lab-day/refactor-app-db
2022-01-31 14:09:07 +00:00
Rory Powell
54a32b41ef
Merge branch 'develop' into feature/migrations-2.0
2022-01-30 22:37:11 +00:00
Rory Powell
0089fb06d9
Merge branch 'develop' into csrf
2022-01-30 21:20:48 +00:00
mike12345567
91a90e62b2
Fixing some issues discovered by the cypress tests, cleaning up how Couch is used.
2022-01-28 18:52:34 +00:00
mike12345567
d5f8cc1023
Tests updating, all now passing, fixed some issues discovered by them.
2022-01-28 15:43:51 +00:00
Michael Drury
d3a90acc55
Final pass refactoring - need to test but all code in server converted.
2022-01-28 00:05:39 +00:00
mike12345567
d2fe119d90
Main body of work, refactoring most usages.
2022-01-27 18:18:31 +00:00
Rory Powell
e5d04d2830
Merge branch 'develop' into feature/migrations-2.0
2022-01-26 15:00:52 +00:00
Rory Powell
0b9bb42817
Revert "Fix dev app preview return url"
...
This reverts commit 13d0bfb190
.
2022-01-26 09:33:14 +00:00
Rory Powell
ffcf5354eb
Add CSRF Token
2022-01-25 22:54:50 +00:00
Rory Powell
3fdce44d56
Migrations 2.0
2022-01-24 10:48:59 +00:00
Rory Powell
04386bd1d8
Merge pull request #4000 from Budibase/fix/sync-apps-reset-rows-quotas
...
App and Row Quota Fixes
2022-01-21 11:20:14 +00:00
Rory Powell
fc043e116d
Support template and app import in quotas + logging
2022-01-18 15:37:16 +00:00
Rory Powell
439fa9a010
Refactor to allow for future quota migrations
2022-01-18 14:43:24 +00:00
Rory Powell
79c10fba7c
Account for duplicate row ids caused by app import
2022-01-18 12:48:54 +00:00
Rory Powell
ff887f8f88
Sync row usage with app deletion
2022-01-17 18:07:26 +00:00
Rory Powell
8fc60af820
Calculate total rows in migration, centralise quota enabled logic and tidy to use env vars only
2022-01-17 12:44:53 +00:00
Rory Powell
13d0bfb190
Fix dev app preview return url
2022-01-13 16:29:55 +00:00
mike12345567
bca8212d1d
Merge branch 'develop' of github.com:Budibase/budibase into fix/sync-apps-reset-rows-quotas
2022-01-12 13:20:22 +00:00
mike12345567
398e87e72a
Fixing test mocking.
2022-01-12 11:50:14 +00:00
mike12345567
5ee6aa24b2
Refactoring core library usage in monorepo, make it a bit cleaner/easier to search/more standardised.
2022-01-12 11:32:14 +00:00
Rory Powell
e58bd14dcc
Merge branch 'develop' into fix/sync-apps-reset-rows-quotas
2022-01-12 09:34:14 +00:00
Rory Powell
da12a33cc1
Add local dev override for quotas
2022-01-11 18:47:42 +00:00
Rory Powell
979313f966
Enable migration
2022-01-11 18:38:18 +00:00
Rory Powell
726315afde
Sync app quota to correct number, reset and disable rows quota
2022-01-11 17:49:42 +00:00
mike12345567
1327394784
Switching out @budibase/auth to @budibase/backend-core.
2022-01-10 19:33:00 +00:00
Andrew Kingston
1b3317a114
Add devtools to app preview and add ability to preview apps as different roles
2021-11-26 13:25:02 +00:00
mike12345567
0f0770af32
Merge branch 'master' of github.com:Budibase/budibase into develop
2021-11-25 12:21:58 +00:00
mike12345567
7170c00a4f
Fix for cypress test issues, when metadata is updated rapidly it could get into a bad state - this should resolve it.
2021-11-16 20:56:24 +00:00
mike12345567
f13257bebe
Updating the getAllApps function to use a cached version of the app metadata, rather than retrieving it individually everytime. Also invalidating the results everytime they are updated (at least in the important locations).
2021-11-15 17:40:45 +00:00
mike12345567
9b8df32c52
Fixing issue where database wasn't accessible in authorized test.
2021-11-15 15:57:02 +00:00
mike12345567
bf4a8737f0
Updating to allow a list of roles to be retrieved, allowing resources to have multiple levels of role that they can be accessed via.
2021-11-15 15:26:09 +00:00
mike12345567
e918efe8c2
Fixing an issue discovered in #3385 - RBAC roles worked for applying lower levels of roles, but they didn't revoke access correctly, it would always fallback to the base permissions if higher permissions were set.
2021-11-15 13:48:26 +00:00
mike12345567
99c47ab264
Merge branch 'develop' of github.com:Budibase/budibase into fix/user-metadata
2021-11-08 17:28:32 +00:00
mike12345567
61a4a240f1
Updating usage quota middleware to fix issue presented in #3258 where anything with an _id and a _rev is considered to exist in CouchDB, which won't always be the case. Handle the scenario of an external database ID and don't error.
2021-11-05 14:59:28 +00:00
mike12345567
94ee13ffc4
Adding the sync call from the worker for creation, updating and deletion of users. Making sure that production and development apps are always up to date with user metadata.
2021-11-04 14:53:03 +00:00
mike12345567
88a729913c
Fixing an issue with webhooks, couldn't use them in development (like getting schema) and making sure trigger will always use production app #3143 .
2021-11-03 14:08:47 +00:00
Rory Powell
46a886f83d
Linting
2021-10-26 09:42:19 +01:00
Rory Powell
ad61f2af3b
Prevent non builder from accessing dev apps
2021-10-25 16:59:09 +01:00
Rory Powell
33a72b29d1
Fix unit tests
2021-10-12 14:03:47 +01:00
Rory Powell
8c67f3da13
No access role / public by default
2021-10-12 10:05:57 +01:00
mike12345567
183b6e7b50
Fixing issue with user's being logged in and trying to access other tenants public apps, this work makes sure that users from other tenants will not be 403'd immediately (too aggressive) but instead they will have all other their RBAC roles revoked.
2021-10-07 15:49:26 +01:00
mike12345567
0ea022971f
Fixing minor mistake.
2021-10-07 08:33:39 +01:00
Martin McKeaveney
fd5bb7b49f
prevent cross tenant app access
2021-10-06 22:16:50 +01:00
mike12345567
453556d273
Fixing an issue with attempting to access a locked app causes a redirect loop locking up browser.
2021-10-06 16:27:46 +01:00
Rory Powell
68396fa4c8
Fix app creation when there is no app ctx
2021-09-30 17:35:09 +01:00
Martin McKeaveney
e2c4663541
fix tests
2021-09-30 10:35:53 +01:00
Martin McKeaveney
e9fcf51f27
remove cloud limits for certain tenants
2021-09-30 10:17:25 +01:00
Martin McKeaveney
5b4bf74e2c
re-adding env var controls for cloud limit functionality
2021-09-27 15:03:48 +01:00
Martin McKeaveney
35d4eac78a
fallback SMTP configuration for cloud
2021-09-27 14:57:22 +01:00
Martin McKeaveney
c49b88b57a
automation runs quotas
2021-09-23 23:25:25 +01:00
Martin McKeaveney
4a2028c354
usageQuota middleware writing to couch
2021-09-23 22:40:14 +01:00
mike12345567
557bd2df9f
Adding metadata system and re-writing how Cron works, previously cron only worked in dev because it would never be enabled for the production app ID, this makes it so that it is never enabled for the dev app and when the production app is deployed it runs through all the automations and checks if any need cron jobs setup/disabled.
2021-09-08 19:29:28 +01:00
mike12345567
2531d9a681
Cleanup, prepping for automation history, some refactoring to get rid of concept of builtin.
2021-09-06 17:53:02 +01:00
mike12345567
bc84bab52c
Merge branch 'master' of github.com:Budibase/budibase into develop
2021-08-06 13:04:54 +01:00
mike12345567
46ea3f3e9e
Revert "Merge pull request #2253 from Budibase/revert-2076-feature/multi-tenants"
...
This reverts commit 4834b765be
, reversing
changes made to 2456e69483
.
2021-08-05 09:59:08 +01:00
mike12345567
217e5a02bf
Fixing issue #2193 , also fixing the name of the file on export, as well as fixing an issue with the exporters not handling relationships.
2021-08-04 18:20:51 +01:00
Michael Drury
b86a6fddc9
Revert "Multi-tenancy/organisations"
2021-08-04 10:02:24 +01:00
mike12345567
e7974f7e86
Implementing some changes to how context gets set for tenancy, after testing, as well as updating server.
2021-08-03 15:32:25 +01:00
mike12345567
4160d63b2d
Merge branch 'fix/lucene-filtering' of github.com:Budibase/budibase into feature/multi-tenants
2021-07-23 16:10:59 +01:00
mike12345567
a5d9883f28
Updating internal search to disable features were required.
2021-07-23 13:29:50 +01:00
mike12345567
b0fb7ae991
Fixing test cases.
2021-07-08 00:30:55 +01:00
mike12345567
93cc9530ed
Merge branch 'develop' of github.com:Budibase/budibase into feature/user-session
2021-07-07 17:17:16 +01:00
mike12345567
7f0fc5f899
Fixing session issues after testing a bit.
2021-07-07 17:15:53 +01:00
Martin McKeaveney
13517d5298
make logged in users basic by default, prevent allowing users to be assigned as default in the UI
2021-07-06 18:43:04 +01:00
mike12345567
b847f85d91
WIP - first version of user sessions.
2021-07-06 18:10:04 +01:00
mike12345567
96fd8ed947
Updating tests to use latest version of jest, which broke a lot of things, but was necessary to get proper ts-jest support.
2021-06-25 13:46:02 +01:00
Andrew Kingston
32a3c2bbb6
Lint with prettier
2021-06-15 19:39:40 +01:00
mike12345567
72c3ff8c2e
Formatting.
2021-06-08 18:06:56 +01:00
mike12345567
fe66c3535c
Fixing a collection of issues, specifically users being exported/imported and issues with database import causing weirdness (metadata doc being wrong).
2021-06-08 18:06:16 +01:00
mike12345567
fe4fcad77c
Fixing issue with builder not always having the correct roles to view an app - global builders are now admins in all apps.
2021-06-04 12:13:29 +01:00
Martin McKeaveney
1487a6012f
fixing various babel issues within tests
2021-06-01 17:09:26 +01:00
mike12345567
c9a352bee7
Fixing server test cases.
2021-05-27 15:40:55 +01:00
mike12345567
9fb5e97330
Linting.
2021-05-27 14:55:48 +01:00
mike12345567
aab11fa932
Updating permissions to allow roles other than builder/admin to use apps properly.
2021-05-27 14:53:41 +01:00
mike12345567
31d0a8b483
Upping debounce to 30 seconds as it has no real negative.
2021-05-21 15:14:35 +01:00
mike12345567
aa51bf7f07
Switching logic for lazy evaluation.
2021-05-21 15:03:28 +01:00
mike12345567
095e513f9f
Formatting
2021-05-21 14:49:59 +01:00
mike12345567
6ccec1632a
Adding a debounced updated at timestamp to applications.
2021-05-21 13:07:10 +01:00
mike12345567
4d6e4475d3
Fixing some issues found when testing.
2021-05-20 20:48:24 +01:00