Commit Graph

156 Commits

Author SHA1 Message Date
mike12345567 6518dfbe3b Playing around with getting tests working. 2023-01-04 19:47:56 +00:00
Martin McKeaveney 8a2a5a1f76
fixes for google sheets, admin checklist, and deleting an app from API (#8846)
* fixes for google sheets, admin checklist, and deleting an app from API

* code review

* splitting unpublish endpoint, moving deploy endpoint to applications controller. Still to do public API work and move deployment controller into application controller

* updating REST method for unpublish in API test

* unpublish and publish endpoint on public API, delete endpoint unpublishes and deletes app

* removing skip_setup from prodAppDb call

* removing commented code

* unit tests and open API spec updates

* unpublish, publish unit tests - delete still in progress

* remove line updating app name in API test

* unit tests

* v2.1.46

* Update pro version to 2.1.46

* v2.2.0

* Update pro version to 2.2.0

* Fix for budibase plugin skeleton, which utilises the old import style.

* Fix side nav styles

* v2.2.1

* Update pro version to 2.2.1

* using dist folder to allow importing constants for openAPI specs

* v2.2.2

* Update pro version to 2.2.2

* Fix for user enrichment call (updating to @budibase/nano fork) (#9038)

* Fix for #9029 - this should fix the issue users have been experiencing with user enrichment calls in apps, essentially it utilises a fork of the nano library we use to interact with CouchDB, which has been updated to use a POST request rather than a GET request as it supports a larger set of data being sent as query parameters.

* Incrementing Nano version to attempt to fix yarn registry issues.

* v2.2.3

* Update pro version to 2.2.3

* Fix SQL table `_id` filtering (#9030)

* Re-add support for filtering on _id using external SQL tables and fix filter key prefixes not working with _id field

* Remove like operator from internal tables and only allow basic operators on SQL table _id column

* Update data section filtering to respect new rules

* Update automation section filtering to respect new rules

* Update dynamic filter component to respect new rules

* v2.2.4

* Update pro version to 2.2.4

* lock changes (#9047)

* v2.2.5

* Update pro version to 2.2.5

* Make looping arrow point in right direction (#9053)

* v2.2.6

* Update pro version to 2.2.6

* Types/attaching license to account (#9065)

* adding license type to account

* removing planDuration

* v2.2.7

* Update pro version to 2.2.7

* Environment variable type coercion fix (#9074)

* Environment variable type coercion fix

* Update .gitignore

* v2.2.8

* Update pro version to 2.2.8

* tests passing

* all tests passing, updates to public API response

* update unpublish call to return 204, openAPI spec and unit

* fixing API tests

Co-authored-by: Budibase Release Bot <>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Andrew Kingston <andrew@kingston.dev>
Co-authored-by: melohagan <101575380+melohagan@users.noreply.github.com>
Co-authored-by: Rory Powell <rory.codes@gmail.com>
2022-12-19 13:18:00 +00:00
Rory Powell 7ef9e9dc51
File authentication using presigned URLs (#8883)
* file auth wip

* Private plugin bucket wip

* Add etag to logo request, fix circular dependency

* Resolve cyclic dependency

* Ensure browser doesn't cache custom component

* Global file fixes

* File fixes / remove permaUrl

* Add ctx local storage

* Enable presigned url to work from any host

* Test fix

* Self hosting w/ S3 + other fixes

* Fix for serving dev app in multi tenant

* Fix backup restore and import attachment url processing, never store attachment urls

* Test fixes

* Unit tests WIP

* Replace file path with base64 encoded private key

* Multi tenancy tests for files

* Environment files fixes

* Post-merge build and test fixes

* Add debug conditional to all jest logging and revert/fix prod minio proxy_pass

* Re-add default '/' minio route :(

* Rename iconFile -> iconFileName

* Add cloudfront vars to k8s templates

* Remove public bucket policy

* Remove duplicated test
2022-12-15 11:35:22 +00:00
Peter Clement 9bf37b34ae
Server and Worker tests (#8928)
* automation unit tests

* row processor tests

* update executeQuery test

* update groups assertion

* some more worker tests

* plugin tests and tidying up

* linting

* temporarily disable group tests

* more tests

* fix import

* fix backup tests

* add pro mocks to worker

* check for app existence in import test

* test new tsconfig

* testing changes

* Pro test utils (#9020)

* Pro test utils changes

* Add test fixes

* Remove ts-ignore

Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Rory Powell <rory.codes@gmail.com>
2022-12-12 22:02:32 +00:00
mike12345567 ab914bcca2 Final fixes after re-running all test suites. 2022-11-28 19:12:23 +00:00
mike12345567 ce1b626f68 Updates to fix build. 2022-11-28 13:24:39 +00:00
mike12345567 ee4ebbfb56 Some typescript conversions, moving a few imports around. 2022-11-21 18:33:34 +00:00
mike12345567 fcb6f985a6 Updating some enums, plural to single. 2022-11-17 14:59:18 +00:00
mike12345567 4f64798ada Updating middlewares to Typescript, as well as some fixes based on running tests. 2022-11-16 17:24:13 +00:00
mike12345567 b0f6224c18 Some major reworks towards higher levels of typescript. 2022-11-16 17:23:12 +00:00
Rory Powell d205b5136b ensure fetch and aws are always mocked 2022-11-15 15:50:15 +00:00
Rory Powell 2212305f08 Bump jest and ts-jest to be consistent across backend packages to fix CI issue, test config updates 2022-11-14 22:55:47 +00:00
mike12345567 a12045917e Minor test rework after improving startup, a lot of mocks weren't being used correctly. 2022-10-27 15:15:08 +01:00
Rory Powell 0274b6755a Replace isTest check with mock for triggering app backup 2022-10-24 13:05:40 +01:00
mike12345567 eeda89725d Renaming data source -> datasource as per Mel's request. 2022-09-14 12:11:20 +01:00
mike12345567 b920f8cb05 Replacing all plural TS enumerations with singular - this involves a major rename of the DocumentTypes. 2022-08-11 13:50:05 +01:00
Rory Powell 4525cf4c6e Trigger served events on ping endpoint 2022-08-10 11:01:54 +01:00
mike12345567 8deab4be06 Merge branch 'master' of github.com:Budibase/budibase into fix/memory-leak 2022-07-14 16:40:23 +01:00
Rory Powell 917cbbb6b1 WIP: Memory leak fix 2022-07-13 08:22:21 -04:00
Dean 18f2e13a30 Fixes for Rest API request UI. Rest test fixes for XML API request body. Fix for raw XML api request body parsing issue. General fixes for query testing. 2022-06-17 12:00:42 +01:00
Rory Powell 429f379431 Failover protection with event cache 2022-05-31 21:04:41 +01:00
Rory Powell 6ea7912a73 Merge branch 'feature/posthog-v2' into feature/event-backfill 2022-05-23 10:29:33 +01:00
Rory Powell 63dd69f5b3 Finish global migration 2022-05-20 21:16:29 +01:00
Rory Powell 8ae358d237 App migrations finished 2022-05-20 12:29:31 +01:00
Rory Powell ca3206f4e4 Stub out migrations + start tests + add build watching for backend-core 2022-05-18 10:56:44 +01:00
Rory Powell bd33c827eb Merge branch 'develop' into feature/posthog-v2 2022-04-27 16:32:00 +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
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 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
Rory Powell 23b68660c2 Merge branch 'feature/licensing' into feature/posthog-v2 2022-04-12 17:12:46 +01:00
Rory Powell b650863a2b smtp events + centralise worker test config 2022-04-06 17:00:17 +01:00
Rory Powell 1a131f3e19 Refactor automation tests to run independently 2022-04-06 12:34:31 +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 4ad846f116 Remove remaining direct usage of CouchDB. Add common pouch config to backend-core 2022-03-29 16:03:44 +01:00
Rory Powell bcc84bf1fd Link app context with tenancy, remove app tenancy middleware 2022-03-24 13:04:49 +00:00
mike12345567 3028c34564 Fixing test case. 2022-02-28 18:53:03 +00:00
mike12345567 f3418044dc Starting to fix up test cases. 2022-02-25 15:55:19 +00:00
Michael Drury 46d23cfb25 Adding a testing system which generates the schema and compares against responses. 2022-02-24 23:21:10 +00:00
Maurits Lourens 7b182b16ad fix tests 2022-02-11 17:28:19 +01: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
mike12345567 76e24018be Merge branch 'develop' of github.com:Budibase/budibase into lab-day/refactor-app-db 2022-01-31 14:09:07 +00:00
Rory Powell a153e920c9 Merge branch 'develop' into feature/migrations-2.0 2022-01-30 22:37:11 +00:00
mike12345567 417bf98ec9 Tests updating, all now passing, fixed some issues discovered by them. 2022-01-28 15:43:51 +00:00
Michael Drury 91c2a40c89 Final pass refactoring - need to test but all code in server converted. 2022-01-28 00:05:39 +00:00
mike12345567 40c6eb2007 Main body of work, refactoring most usages. 2022-01-27 18:18:31 +00:00
Rory Powell e8e6fc549d Add app db support + app url migration 2022-01-27 10:40:31 +00:00
Rory Powell 5cb6e19274 Add CSRF Token 2022-01-25 22:54:50 +00:00
Rory Powell 08bd447b51 Remove server -> worker request to retrieve apps, remove hosting endpoints and store 2022-01-21 17:31:18 +00:00
mike12345567 5d9b3af332 Refactoring core library usage in monorepo, make it a bit cleaner/easier to search/more standardised. 2022-01-12 11:32:14 +00:00
mike12345567 3f6b7d4daf Renaming some variables to core, fixing test cases that referenced auth directly. 2022-01-11 16:18:30 +00:00
mike12345567 4c050699d4 Merge branch 'develop' of github.com:Budibase/budibase into feature/auth-core 2022-01-11 15:16:07 +00:00
Rory Powell 68cc60d015 Invalidate dynamic variables when they are removed from datasource 2022-01-11 10:35:53 +00:00
mike12345567 836a2f5863 Switching out @budibase/auth to @budibase/backend-core. 2022-01-10 19:33:00 +00:00
mike12345567 de243c933a Adding basic test cases for static and dynamic variables (backend). 2022-01-04 18:23:45 +00:00
mike12345567 f86448a276 Merge branch 'develop' of github.com:Budibase/budibase into fix/sql-issues 2021-10-27 14:51:43 +01:00
mike12345567 24eebd9b98 Fixing test cases. 2021-10-27 13:10:46 +01:00
Rory Powell fd9796f715 Update app id check in tests 2021-10-26 16:21:26 +01:00
Rory Powell 0718f99850 Prevent non builder from accessing dev apps 2021-10-25 16:59:09 +01:00
Peter Clement 22bbbb5ba4 fix tests 2021-09-28 15:29:42 +01:00
mike12345567 42f08f97cc Revert "Merge pull request #2253 from Budibase/revert-2076-feature/multi-tenants"
This reverts commit 0d2e2314d4, reversing
changes made to 1beca4ee96.
2021-08-05 09:59:08 +01:00
Michael Drury f37946d47e
Revert "Multi-tenancy/organisations" 2021-08-04 10:02:24 +01:00
mike12345567 7a69dcef78 re-write, to use the ideas that Rory put in place, still WIP, un-tested but all implemented. 2021-08-02 18:34:43 +01:00
mike12345567 b5d7e76ec2 Merge branch 'fix/lucene-filtering' of github.com:Budibase/budibase into feature/multi-tenants 2021-07-23 16:10:59 +01:00
mike12345567 9f06b180a8 Adding concept of version to APIs. 2021-07-23 15:29:14 +01:00
mike12345567 1153001af8 Linting. 2021-07-22 22:37:20 +01:00
mike12345567 155e30965f Fixing test cases and bugs that they raised. 2021-07-22 22:36:16 +01:00
mike12345567 f0f9736c0b Updating auth to utilise the tenant system. 2021-07-16 15:08:58 +01:00
mike12345567 5ffe3c7935 First version of multi-tenancy, work still to be done. 2021-07-15 17:57:02 +01:00
mike12345567 2bee348721 Fixing test cases. 2021-07-08 00:30:55 +01:00
mike12345567 d90f77fa42 Speeding up server tests and removing the ability for it to port collide. 2021-06-25 16:14:06 +01:00
mike12345567 19da122425 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
Martin McKeaveney f83f358514 automation server tests updated 2021-06-17 16:35:58 +01:00
mike12345567 594a290286 Re-writing how global users are handled in server, specifically how they are retrieved, so that for relationships it can handle the global user. 2021-06-08 16:06:30 +01:00
mike12345567 2938d3a92d Fixing broken backend test cases. 2021-06-07 14:08:49 +01:00
mike12345567 1f8f04d84c Formatting. 2021-06-04 12:13:57 +01:00
mike12345567 9d3c28ecbf 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 0b3110b223 merge with master 2021-05-20 10:40:15 +01:00
mike12345567 0db486d4e8 Formatting. 2021-05-19 16:24:50 +01:00
mike12345567 ed63d1d8f2 Updating user test cases. 2021-05-19 16:24:20 +01:00
Martin McKeaveney 6dc288fcc3 merge 2021-05-16 21:29:07 +01:00
Martin McKeaveney 0ed0550e73 revert functionality working 2021-05-16 21:25:37 +01:00
mike12345567 ac0f620b38 Formatting. 2021-05-14 16:32:51 +01:00
mike12345567 2d0122f7d6 A general re-work of some parts of the auth lib, as well as moving roles/permissions around to make it possible to build an admin API which has role knowledge. 2021-05-14 15:43:41 +01:00
Andrew Kingston 556236ebce Add explicit prettier options 2021-05-04 11:32:22 +01:00
Keviin Åberg Kultalahti 4ec2e7d01f lint:fix 2021-05-03 09:31:09 +02:00
mike12345567 84e66f826b Updates after finding a better template to use and adding some real email testing with Ethereal platform. 2021-04-26 14:14:51 +01:00
mike12345567 d985d338ec Updating test cases and some re-work of the email system. 2021-04-23 18:07:39 +01:00
mike12345567 46c9df6245 Adding testing to worker, still WIP. 2021-04-23 14:58:06 +01:00
mike12345567 bb5dbf27aa Some re-work of the auth package, making it a bit easier to use/less likely to make a mistake. 2021-04-21 16:42:44 +01:00
mike12345567 f6425524a4 Updating test cases now that login has changed a bit. 2021-04-20 17:27:23 +01:00
mike12345567 ade007482c Updating the server to remove use of the email in the user ID. 2021-04-19 16:26:33 +01:00
mike12345567 76608fcdcd Fixing up tests, need to mock most of the worker functionality so that worker doesn't need to run during tests. 2021-04-13 20:25:43 +01:00
mike12345567 8b20fcb573 Getting most of the test auth working, adding in global builder configuration. 2021-04-13 18:12:35 +01:00
mike12345567 792114ef46 First pass of global user configuration through existing user API with role mappings. 2021-04-08 16:58:33 +01:00
mike12345567 1cf0027c6e Some cleanup fixes for tests that makes sure temp directory isn't getting out of control. 2021-03-25 14:46:32 +00:00
mike12345567 73cf53d149 Getting rid of the CLOUD environment variable, this makes no sense anymore, now there is isDev() and isProd() which will work out the current state of the cluster. 2021-03-24 18:21:23 +00:00
mike12345567 19b5b41953 Main work of file system refactor now complete, ready to test more fully - most test cases passing, need to look through them more thoroughly and make sure everything still makes sense. 2021-03-23 17:54:02 +00:00