Commit Graph

286 Commits

Author SHA1 Message Date
Rory Powell 63dd69f5b3 Finish global migration 2022-05-20 21:16:29 +01:00
mike12345567 eae5d4dc4d Removing the use of pouchdb-all-dbs from testing environment, it was causing more harm than good and was entirely avoidable. 2022-05-20 18:29:37 +01:00
Rory Powell 8ae358d237 App migrations finished 2022-05-20 12:29:31 +01:00
mike12345567 d922a5794b Review comments. 2022-05-19 10:32:14 +01:00
Rory Powell 9fdba2b6e1 Migration for apps, automations, datasources, layouts, queries, roles, tables 2022-05-19 08:19:25 +01:00
Martin McKeaveney aa61a86c4a use platform url env 2022-05-18 21:00:42 +01:00
Rory Powell ca3206f4e4 Stub out migrations + start tests + add build watching for backend-core 2022-05-18 10:56:44 +01:00
mike12345567 39806d470d Merge branch 'develop' of github.com:Budibase/budibase into feature/portal-usage 2022-05-18 10:56:44 +01:00
mike12345567 36a190b0ed Finishing off UI, expanding settings menus from 80ch to 90ch as they were quite restricted and made the usage UI a bit difficult to view. Added a DISABLE_DEVELOPER_LICENSE env variable for testing. 2022-05-17 17:44:40 +01:00
Rory Powell eb935cf143 Fix tests and build 2022-05-17 10:05:05 +01:00
Rory Powell e50813bbd7 Update getPlatformUrl usage to use a single interface 2022-05-17 09:52:38 +01:00
Martin McKeaveney 557e4ec3f8 editing getPlatformUrl for cloud 2022-05-16 23:22:33 +01:00
mike12345567 bcf7e1782a Fixing test cases. 2022-05-16 12:31:07 +01:00
Rory Powell c9b199570a Add execute automation to basic user / write permission set 2022-05-12 17:35:31 +01:00
mike12345567 bba1fdcb7c Switching over to using our own version of cls-hooked which has the memory leak (no async hooks disable call) fixed as well as changing how we use the CLS namespaces to allow us to destroy the namespace we use per request. 2022-05-10 16:37:24 +01:00
mike12345567 5048469cfc Adding our own version of cls hooked with the memory leak fixed. 2022-05-10 16:34:20 +01:00
Rory Powell 182831d502 handlers -> publishers and analtics -> processors 2022-05-10 10:33:59 +01:00
mike12345567 2abfeb9356 Unit tests for the utility functions that have changed around app ID checks/generation./ 2022-05-09 13:28:01 +01:00
mike12345567 7b461c03dd Fixing issue #5778 - making sure to only remove the first app_ element of the app ID. 2022-05-09 12:29:44 +01:00
Martin McKeaveney e26d79b83c
Merge pull request #5643 from Budibase/feature/small-april-tickets
Feature/small april tickets
2022-05-06 16:27:50 +01:00
Martin McKeaveney 6cddc3f8f9 merge 2022-05-05 12:45:09 +01:00
Rory Powell 2cfb7be30a Re-enable gsheets for verification 2022-05-05 09:59:10 +01:00
Rory Powell 5672adb4b6 Merge branch 'feature/posthog-v2' into feature/event-backfill 2022-05-05 09:22:01 +01:00
Rory Powell ab778190cb
Merge pull request #5694 from Budibase/add-types-package
Add @budibase/types package
2022-05-05 08:50:37 +01:00
Rory Powell 3e254e46bb Merge branch 'develop' into feature/posthog-v2 2022-05-05 08:47:06 +01:00
Rory Powell 78b64fdfb9 App backfill (wip) 2022-05-05 08:32:14 +01:00
Rory Powell 320c1e7009 Add isDev() to backend-core/env 2022-05-04 12:28:21 +01:00
Rory Powell 23cbd217cd Add ts watch support for backend-core + stub out migrations 2022-05-04 11:22:50 +01:00
Rory Powell 606d21b313 Build and test fixes 2022-05-03 22:58:19 +01:00
Rory Powell e1a656b76f Add @budibase/types package 2022-05-03 17:13:13 +01:00
Rory Powell 1e7e6bdab8 Merge branch 'labday/backend-core-ts' into feature/posthog-v2 2022-04-29 14:01:13 +01:00
Martin McKeaveney 06774c1452 merge 2022-04-29 00:05:43 +01:00
Rory Powell 36f7358a20 backend-core typescript building successfully 2022-04-28 22:39:21 +01:00
mike12345567 28584a01db Fixing test case. 2022-04-27 22:57:03 +01:00
mike12345567 84afa832c5 Review comments. 2022-04-27 22:36:45 +01:00
mike12345567 00c67289b0 Fixing an issue with cookie auth. 2022-04-27 16:56:30 +01:00
Rory Powell bd33c827eb Merge branch 'develop' into feature/posthog-v2 2022-04-27 16:32:00 +01:00
mike12345567 4a02f7f9aa Fix for issue being able to delete apps. 2022-04-27 15:58:55 +01:00
Rory Powell 716eab5d10 Bypass couch db when using tenancy middleware 2022-04-26 17:13:45 +01:00
Martin McKeaveney a5bdf70cf7 renamable buckets, started firebase tests, onboarding modal copy update 2022-04-26 17:12:47 +01:00
mike12345567 95c7963c0a Merge branch 'develop' of github.com:Budibase/budibase into fix/develop-merge 2022-04-26 16:31:17 +01:00
Dean 5545cd84c5 Merge remote-tracking branch 'origin/develop' into feature/new-app-publish-workflow 2022-04-26 12:12:50 +01:00
Martin McKeaveney e01ef9bdfb merge with master 2022-04-26 10:21:45 +01:00
Rory Powell 0f04715062 Fix: google sso 2022-04-25 22:49:56 +01:00
Rory Powell b7cbd2a56a Fix developer count migration when only single developer 2022-04-25 15:38:37 +01:00
Rory Powell fa136ba4ca Sync versions of pro and backend-core 2022-04-25 12:19:36 +01:00
Martin McKeaveney 9f0cb41f49
Merge branch 'master' into gsheets-updates 2022-04-25 09:27:38 +01:00
Martin McKeaveney 0fbb841855 only save refresh token in google auth 2022-04-24 23:33:50 +01:00
Martin McKeaveney 33717ceb30 auto fetch access token in gsheets integration 2022-04-24 23:32:47 +01:00
mike12345567 9828fc6f58 Fixing an issue we've experienced with couch, using a base64 cookie that we control manually. 2022-04-22 17:24:50 +01:00
mike12345567 a6b249dc7e Adding a dep:clean function, cleaning up lock files and fixing backend-core test which did not utilise tenancy (no global db). 2022-04-21 15:20:23 +01:00
mike12345567 fe846f86a5 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
Dean 91a6f8645c Merge remote-tracking branch 'origin/develop' into feature/new-app-publish-workflow 2022-04-21 14:10:58 +01:00
mike12345567 9d01028bd0 Adding another check to make sure context is the same. 2022-04-20 23:13:08 +01:00
mike12345567 1d61ff906a Fixing some issues detected by the test cases, making the in-use mechanism for context more clear to complete avoid stack up of contexts (leading to loss of knowledge around previous databases. 2022-04-20 23:10:39 +01:00
mike12345567 9ee1be79fb Closing global DB using the standard function - not directly. 2022-04-20 18:07:48 +01:00
mike12345567 7792a07899 Some updates, making sure databases will always close directly using finally checks around the actual tasks, updating how replication works to have a close statement (to make sure it is controlled correctly) and then updating to PouchDB 7.3.0 for one of the memory leak fixes. 2022-04-20 17:33:42 +01:00
Rory Powell 2269bf677b Merge branch 'develop' into feature/licensing 2022-04-20 14:59:36 +01:00
mike12345567 ea6f580501 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 769f48f935 Remove remaining direct usage of CouchDB. Add common pouch config to backend-core 2022-04-19 16:45:27 +01:00
Dean 4cc1a85f25 Code style check 2022-04-19 14:56:56 +01:00
Dean 3e74118f81 Unpublish refactored to stop development applications being mistakenly deleted. Minor updates to the modal content component to allow the replacement of the header. Further work to implement the publishing workflow changes 2022-04-19 14:38:09 +01:00
Andrew Kingston 98eefb1dd2
Merge pull request #5272 from Budibase/cheeks-lab-day-devtools
DevTools
2022-04-14 12:57:01 +01:00
Rory Powell 3018aaf078 Handle no developers on first time startup migration 2022-04-13 23:14:36 +01:00
Rory Powell 23b68660c2 Merge branch 'feature/licensing' into feature/posthog-v2 2022-04-12 17:12:46 +01:00
Rory Powell dd740df387 Merge branch 'develop' into feature/licensing 2022-04-12 16:18:41 +01:00
Rory Powell 76d4e5d760 Test updates 2022-04-12 15:37:49 +01:00
Rory Powell 6a346d4650 User management events 2022-04-12 12:34:36 +01:00
Rory Powell 6bfb50b590 View/Filter/Calculation events 2022-04-12 00:19:52 +01:00
Rory Powell 06d70266cd View/Table/Row Import/Export events 2022-04-11 22:32:12 +01:00
Rory Powell 2c682d3507 Table CRUD events + add timekeeper for tests 2022-04-11 14:39:31 +01:00
Rory Powell eec094b581 builder / app / app preview served events 2022-04-08 14:07:11 +01:00
Rory Powell e725b1fb52 screen events 2022-04-08 10:55:39 +01:00
Rory Powell 75be1e031b user / rbac events + tests 2022-04-08 01:28:22 +01:00
Dean cbc3d3b946 Refactored the invalidate session functionality. 2022-04-07 12:32:00 +01:00
Rory Powell ed9836d8a6 query / update events + tests 2022-04-07 00:38:18 +01:00
Rory Powell 9d264ef1ba org settings events + tests + stub license events 2022-04-06 22:53:33 +01:00
Martin McKeaveney d7dbaef8be
Merge pull request #5151 from mslourens/prevent_multiple_sessions
invalidate sessions before login
2022-04-06 22:18:17 +01:00
Rory Powell 7846fff25d layout events + tests 2022-04-06 22:07:21 +01:00
Rory Powell e3cf9b0661 rename data -> structures 2022-04-06 22:00:10 +01:00
Rory Powell d9da559bba automation events + tests 2022-04-06 13:54:57 +01:00
Andrew Kingston 7c91d9dceb Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-devtools 2022-04-06 11:50:43 +01:00
Rory Powell 9ebdf837fc sso activated/deactivated events + tests 2022-04-06 00:54:07 +01:00
Rory Powell fde16cf548 google/oidc created/deleted events + tests 2022-04-05 23:14:53 +01:00
Rory Powell 5b8ea1cdbe account event mocks 2022-04-05 21:53:27 +01:00
Rory Powell a4b49c3633 Logout events 2022-04-05 16:56:28 +01:00
Rory Powell 39ef2438a3 sso auth + datasource events, test updates 2022-04-05 15:46:04 +01:00
Rory Powell 7a5df9010c App events 2022-04-04 15:59:00 +01:00
Rory Powell c428ed7177 Add event domain 2022-04-01 21:29:44 +01:00
Martin McKeaveney e263cc31bb merge with master 2022-03-30 15:44:22 +01:00
Rory Powell ec0dcb42ee Add tests for base db config 2022-03-30 15:43:18 +01:00
Rory Powell 1339af11ae Add createdAt and updatedAt to all new put requests 2022-03-30 14:24:04 +01:00
Rory Powell 4ad846f116 Remove remaining direct usage of CouchDB. Add common pouch config to backend-core 2022-03-29 16:03:44 +01:00
Maurits Lourens 9faaecb57e move invalidation to the creation of a session 2022-03-29 11:59:16 +02:00
Maurits Lourens f4557fb220 invalidate sessions before login 2022-03-29 10:06:54 +02:00
Martin McKeaveney ee6a16827a fixing google sheets bug, respect google configuration hierarchy 2022-03-28 16:44:33 +01:00
mike12345567 e073bdb5a4 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
Martin McKeaveney 3a7a964ac8 fix launch.json 2022-03-28 12:03:44 +01:00
Rory Powell 77e43e0661 Merge branch 'feature/licensing' into feature/posthog-v2 2022-03-28 09:47:34 +01:00
Rory Powell ef629c9859 Fixes 2022-03-25 16:08:12 +00:00
Rory Powell 1922bd1fcb Add analytics to backend-core. Update server posthog usage 2022-03-25 13:04:34 +00:00
Rory Powell bcc84bf1fd Link app context with tenancy, remove app tenancy middleware 2022-03-24 13:04:49 +00:00
Rory Powell cb6103a321 Fix cross tenant apps with session 2022-03-23 16:45:06 +00:00
Rory Powell 180e37b9f1 Tests complete + backwards compatibility for deployment 2022-03-22 00:23:22 +00:00
Rory Powell bf9f5488fc Merge branch 'develop' into feature/licensing 2022-03-21 17:13:16 +00:00
Rory Powell 336f0ff4a0 Published apps, automations and query count quotas 2022-03-20 01:13:54 +00:00
Rory Powell 62b360b9ea Add developer usage restrictions to SSO user creation 2022-03-18 08:01:31 +00:00
Rory Powell 893f82ac4d Better error handling around license errors 2022-03-16 17:29:47 +00:00
mike12345567 a5556595de Fixing an issue with the public API loading for the first time in a multi-tenant environment, also fixing an issue in self host when switching between environments with different secrets. 2022-03-14 19:05:02 +00:00
mike12345567 8dc2c9d480 Fixing an issue with detecting fully qualified Redis URL despite not in use. 2022-03-14 16:50:01 +00:00
mike12345567 c1c879309f Making the URL optional for application creation/update in OpenAPI spec, removing unused parameter and fixing getRedisOptions function to work with fully qualified URLs. 2022-03-10 15:53:23 +00:00
Rory Powell ccf2fe3d01 Self Host <-> Licensing integration 2022-03-09 21:16:22 +00:00
Rory Powell c22fb79d94 Merge branch 'develop' into labday/status-banner 2022-03-08 16:31:07 +00:00
Rory Powell d6092b9133 Integrate usage quotas with licensing 2022-03-08 14:21:41 +00:00
Rory Powell 995f7c4b58 Move licensing middleware to pro repo 2022-03-08 08:01:41 +00:00
Rory Powell 3b9303a1fb Enforce licensed developer count + error types/codes framework 2022-03-04 13:42:50 +00:00
Rory Powell 515ade6bd3 Add shared licensing cache 2022-03-03 13:37:04 +00:00
Rory Powell c67de30d8c Invalidate user cache on logout 2022-03-03 07:20:30 +00:00
Rory Powell 091f054e8a Handle no license found 2022-03-02 07:27:14 +00:00
Rory Powell 8ff9aac4f8 Start to integrate licensing with sessions 2022-03-01 21:11:45 +00:00
mike12345567 f3418044dc Starting to fix up test cases. 2022-02-25 15:55:19 +00:00
mike12345567 f2c2c903e5 Merge branch 'develop' of github.com:Budibase/budibase into feature/budibase-api 2022-02-24 18:19:20 +00:00
Rory Powell 9fcf702a32 Add status banner that reacts to cypress healthcheck failures 2022-02-24 14:41:24 +00:00
Andrew Kingston 40c6976035 Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-devtools 2022-02-24 14:03:29 +00:00
mike12345567 c189550614 Adding controllers for row, query and applications public APIs. 2022-02-23 18:31:32 +00:00
mike12345567 6a416cad59 Refactoring how endpoints are specified so that the middlewares can be applied in a more generic fashion. 2022-02-22 18:40:09 +00:00
Rory Powell 65b0455313 Fix app list retrieval in migrations 2022-02-22 07:49:33 +00:00
mike12345567 282fa6cac2 Merge branch 'develop' of github.com:Budibase/budibase into feature/budibase-api 2022-02-21 16:54:39 +00:00
Rory Powell d673d27563 Respect custom tenantIds in run migrations endpoint 2022-02-21 15:27:51 +00:00
mike12345567 97337db4ee Merge branch 'develop' of github.com:Budibase/budibase into feature/budibase-api 2022-02-21 14:34:06 +00:00
Rory Powell d9ead48c59 Deprovision and local couch db url fix 2022-02-18 17:36:23 +00:00
Rory Powell a8a8e97840 Add 'location = /' -> 4001 to nginx dev conf 2022-02-18 11:18:59 +00:00
mike12345567 ab3971034d Quick fix for checklist API performance on default tenant in cloud. 2022-02-16 11:59:43 +00:00
Michael Drury f04a29dfef Using 10K iteration string stretching for encryption. 2022-02-14 21:37:40 +00:00
mike12345567 92d457ac00 Adding basic encrypt/decrypt pathway. 2022-02-14 18:32:09 +00:00
mike12345567 84bf8c3422 Adding tenancy to the API key, making the authenticated middleware aware of new user API keys, using a view to lookup the user by API key. 2022-02-11 22:24:48 +00:00
mike12345567 dff24e402d Getting api key/dev info docs setup and in use. 2022-02-10 19:06:49 +00:00
Martin McKeaveney 20b4f5aadc merge with master 2022-02-10 18:57:26 +01:00
Martin McKeaveney ff50dd9f6d merge with master 2022-02-10 18:24:36 +01:00
Martin McKeaveney dfe9861383 use google env variable for client secret and ID, update helm chart to pass variables to worker 2022-02-10 10:28:46 +01:00
Martin McKeaveney f574c90de3 use env platform URL for datasource auth to prevent tenant overrides 2022-02-09 18:33:29 +01:00
Andrew Kingston 04d53a709c Merge branch 'develop' of github.com:Budibase/budibase into frontend-core 2022-02-07 14:45:14 +00:00
mike12345567 f9a7bb001f Fixing issue which was blocking the ability to logout fully, as well as causing issues with new user signup and password reset. 2022-02-04 17:35:45 +00:00
mike12345567 8f7a8553bb Fix for #4267 - allow admins to access all roles. 2022-02-04 17:34:39 +00:00
Andrew Kingston 9f2369234b Merge branch 'develop' of github.com:Budibase/budibase into frontend-core 2022-02-03 14:46:59 +00:00
Michael Drury e1a4136f9c Fixing a typescript issue in server. 2022-02-01 20:29:12 +00:00
Andrew Kingston 312571314d Merge branch 'develop' of github.com:Budibase/budibase into frontend-core 2022-02-01 16:46:00 +00:00
mike12345567 9fa10ff02f Refactoring backend-core tenancy to context, splitting out tenancy functionality to its own area. 2022-01-31 17:53:19 +00:00
mike12345567 03b4b29b01 Review comments, renaming deployed -> prod in terms of app IDs. 2022-01-31 17:42:51 +00:00
mike12345567 09cfa9508e Merge branch 'develop' of github.com:Budibase/budibase into lab-day/refactor-app-db 2022-01-31 17:16:59 +00:00