Commit Graph

761 Commits

Author SHA1 Message Date
Arpit Mohan
a973d779fd
Correcting the display message for query actions based on isExecutionSuccess flag (#3045)
Also improving the mongo error response string. Now we only send the error message instead of the entire stack trace back to the client
2021-02-15 22:10:04 +05:30
Sumit Kumar
5638997a36
change response data format for AmazonS3 Plugin (#3023)
* change response data format.
* fix TCs
2021-02-12 19:34:03 +05:30
Sumit Kumar
4df595417f
return url on file create and fix image/video file upload issues with amazons3 plugin (#3012)
1. Return url on file create.
2. Fix image/video upload/download.
3. Change error msg format to directly print error msg without adding any prefix sentence.
2021-02-12 16:01:26 +05:30
Nidhi
8823f9d407
Added client credentials grant type for OAuth2 (#2649)
* Added client credentials grant type for OAuth2

Co-authored-by: Piyush <piyush@codeitout.com>
2021-02-11 17:58:06 +05:30
Sumit Kumar
4870c0d743
enable save on missing username/password (#2979)
1. Add encrypted logo to password.
2. Enable save on empty username / password.
2021-02-11 14:35:10 +05:30
Sumit Kumar
e9e30d1fa4
Enable toggle for params encoding (#2968)
Enable toggle for params encoding
1. Add toggle param to ActionConfiguration class.
2. Add TCs to test toggle on/off/null.
2021-02-11 11:02:29 +05:30
Sumit Kumar
2a7f7ba8c4
s3 plugin (#2735)
1. Integrate S3 plugin.
2021-02-10 15:26:01 +05:30
Shrikant Sharat Kandula
95d1717f57 Merge branch 'release' 2021-02-10 14:35:02 +05:30
Shrikant Sharat Kandula
ed1c926c8a
Add datasource structure support for DynamoDB (#2919) 2021-02-10 13:28:35 +05:30
Shrikant Sharat Kandula
c5df149ba8
Add IN operator support for forms' hidden fields (#2939) 2021-02-10 11:27:21 +05:30
Nidhi
c0e44d0cd9
Added null check for error messages (#2922)
* Added null check for error messages

* Added a generic null check for future null pointers from other sources.
2021-02-09 15:00:22 +05:30
Shrikant Sharat Kandula
fbf6021080
Fix nested structure translation in DynamoDB (#2915) 2021-02-09 06:59:45 +05:30
Shrikant Sharat Kandula
ebcbfb0043 Merge branch 'release' 2021-02-08 16:39:47 +05:30
Shrikant Sharat Kandula
433ce89c76
Add support for handling array types in Postgres plugin (#2887) 2021-02-08 15:06:57 +05:30
Nidhi
35b3e7d84f
Switched test container ver (#2898) 2021-02-08 13:40:53 +05:30
Sumit Kumar
e6b77a1299
Stop logging some AppsmithPluginException to Sentry (#2351)
1. Move package  appsmith-interfaces/src/main/java/com/appsmith/external/pluginExceptions-> appsmith-interfaces/src/main/java/com/appsmith/external/exceptions/pluginExceptions
2. Move enum AppsmithErrorAction from appsmith-server/src/main/java/com/appsmith/server/exceptions/AppsmithError.java -> appsmith-interfaces/src/main/java/com/appsmith/external/exceptions/AppsmithErrorAction.java, so that both plugin exceptions and server exceptions could use the same enum.
3. Log exception based on the error action defined for each exception.
2021-02-04 15:24:30 +05:30
Shrikant Sharat Kandula
779c41e0d3 Merge branch 'release' 2021-02-03 17:44:23 +05:30
Nikhil Nandagopal
db9c2d6c27 Updated doc link 2021-02-03 17:28:05 +05:30
Nidhi
01bbc03857
Fixed handling of lists in dynamodb (#2818) 2021-02-02 13:35:58 +05:30
Shrikant Sharat Kandula
98a0cd59b1
Fix reference types in arrays in Firestore (#2811)
* Fix reference types in arrays in Firestore

* Added a whole bunch of tests for various data types
2021-02-02 10:18:06 +05:30
Shrikant Sharat Kandula
8475d71600
Fix RestAPI plugin not starting up (#2757)
* Remove unneeded dependency exclusions
2021-02-01 14:38:06 +05:30
Shrikant Sharat Kandula
018e1a94d6
Fix Firestore single document method for ref types (#2790) 2021-02-01 14:23:48 +05:30
Arpit Mohan
433461a347
Merge pull request #2759 from appsmithorg/release
Release v1.3.2
2021-01-28 18:02:48 +05:30
Shrikant Sharat Kandula
b731793a88
Fix reference type fields in Firestore throwing 500 (#2718) 2021-01-27 20:38:46 +05:30
Shrikant Sharat Kandula
350aea90c4
Revert RestAPI plugin signature timeout fix (#2748) 2021-01-27 17:24:25 +05:30
Shrikant Sharat Kandula
63b7eb6e95
Fix signature in RestAPI plugin throwing timeout error (#2745)
* Fix restapi signature throwing timeout error

* Add missing dependencies for restapi
2021-01-27 14:55:08 +05:30
Shrikant Sharat Kandula
42efb20d14
Remove unused cert fields for Mongo and Postgres plugins (#2723) 2021-01-26 18:44:01 +05:30
Nidhi
6515b5c91c
Fixed null endpoint issue for MySQL plugin (#2719) 2021-01-26 17:16:31 +05:30
Shrikant Sharat Kandula
63fb249e40 Merge branch 'release'
# Conflicts:
#	app/client/cypress/integration/Smoke_TestSuite/Onboarding/Onboarding_spec.js
#	app/client/src/components/editorComponents/Onboarding/Tooltip.tsx
#	app/client/src/constants/OnboardingConstants.tsx
#	app/client/src/pages/Editor/Welcome.tsx
#	app/client/src/sagas/ActionExecutionSagas.ts
#	app/client/src/sagas/OnboardingSagas.ts
2021-01-20 15:49:56 +05:30
Nidhi
e6a0b00a25
Added Oauth2 functionality for REST APIs (#2509)
* Added Oauth2 functionality for REST APIs

* Encrypted response

* Missed file

* Review comments and tests

* Removed broken test
2021-01-15 16:41:13 +05:30
Sumit Kumar
4748014cee
Redshift plugin (#2440)
* introduce redshift plugin
2021-01-06 17:51:07 +05:30
Trisha Anand
db2b002ac7 Increased logs to debug future connection leaks. (#2437)
* Increased logs to debug future connection leaks.

* Fetch a connection from the pool only if a query exists.

* Minor comment added.

* Minor rewrite

* Code formatting.

* Update app/server/appsmith-plugins/postgresPlugin/src/main/java/com/external/plugins/PostgresPlugin.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Added hikari cp pool stats to get database structure function as well.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-01-05 18:39:36 +05:30
Nidhi
de5003a98e
Added type parameter for REST API plugin, and changes for no auth (#2438)
* Added type parameter for REST API plugin, and changes for no auth

* Removed logs

* Converted to reactive
2021-01-05 17:59:50 +05:30
Trisha Anand
d5074ee7f7
Increased logs to debug future connection leaks. (#2437)
* Increased logs to debug future connection leaks.

* Fetch a connection from the pool only if a query exists.

* Minor comment added.

* Minor rewrite

* Code formatting.

* Update app/server/appsmith-plugins/postgresPlugin/src/main/java/com/external/plugins/PostgresPlugin.java

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>

* Added hikari cp pool stats to get database structure function as well.

Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com>
2021-01-05 15:34:55 +05:30
Trisha Anand
214f911060 Fixed merge conflict related build failure. 2021-01-04 11:24:00 +05:30
Trisha Anand
24ef325467
Merge branch 'master' into release 2021-01-04 11:18:13 +05:30
Trisha Anand
a3378397d7 Increasing pool size to 20 to reduce the number of times datasource becomes unusable. Symptomatic relief till I can solve for this at leisure over the next few days.
Note : Update/Insert are leading to connection leak
2021-01-01 01:24:26 +05:30
Trisha Anand
a70b95be37 Adding leak detection to hikari pool. Would be tracking this on logdna to ensure that we are catching any and all leaks that may be occuring with hikari. (#2374) 2020-12-28 18:29:50 +05:30
Trisha Anand
051d3c6c7f
Adding leak detection to hikari pool. Would be tracking this on logdna to ensure that we are catching any and all leaks that may be occuring with hikari. (#2374) 2020-12-28 18:26:33 +05:30
Sumit Kumar
6299c86f39
Add TC to test mongodb connection establishment (#2364)
1. Test that when a query is attempted to run on mongodb server but refused because of lack of authorization, then
also, it indicates a successful connection establishment.
2020-12-28 11:58:17 +05:30
Sumit Kumar
53a6160139
Revert "Redshift plugin (#2112)" (#2314)
This reverts commit 708ca7fedf.
2020-12-22 16:59:18 +05:30
Sumit Kumar
708ca7fedf
Redshift plugin (#2112)
1. Add new plugin to connect to AWS Redshift cluster and run query.
2. Add unit test cases.
2020-12-22 15:35:25 +05:30
Shrikant Sharat Kandula
ea6e897dde
Firestore ADD_TO_COLLECTION command support (#2305)
* Support ADD_TO_COLLECTION operation on Firestore

* Add test for Firestore add-to-collection command
2020-12-22 12:32:14 +05:30
Shrikant Sharat Kandula
fdc4f7b200
Fix invalid templates and API breaking on invalid templates (#2286) 2020-12-19 13:00:24 +05:30
Shrikant Sharat Kandula
5e04ca5c9d
Add ability to configure order of templates of plugins (#2279) 2020-12-18 20:45:08 +05:30
Nidhi
a00c144e85
Subclassing authentication (#2215)
* Sublcassing authentication

* Removed TODO

* Review changes
2020-12-17 21:38:52 +05:30
Trisha Anand
29706f7852
Removing printing the result for firestore plugin (#2191) 2020-12-14 14:48:50 +05:30
Trisha Anand
e5c44168f3
Configured pool size for hikariCP when new pool comes uo. (#2170) 2020-12-14 11:07:53 +05:30
Trisha Anand
74342f8598
Adding hikariCP for postgres (#2130) 2020-12-10 21:08:02 +05:30
Trisha Anand
746b0ab58e Changed log to sout in postgres plugin 2020-12-09 19:16:54 +05:30
Trisha Anand
888d79b06d Removing printing of result objects from plugin execution. 2020-12-09 19:03:51 +05:30
Trisha Anand
8283396056
Moved from boundedElastic to elastic to ensure that the server services the plugin execution request as soon as the request arrives. (#2090) 2020-12-08 22:04:14 +05:30
Sumit Kumar
db3636f7b0
mysql plugin - check if connection is stale before running query (#2080)
1. Check if mysql plugin connection is stale. If so, then return stale connection exception which triggers a retry after 
    establishing a new connection.
2. Refactor execute method code to remove code duplication.
3. Add a new test case to check if stale connection gets detected.
2020-12-08 21:03:31 +05:30
Sumit Kumar
b6abb8b067
Encode request body in Rest API plugin (#1988)
1. Encode request body in REST API plugin when content header for URL encode is set.
2. Add a test case to test the encoding function.
3. Add a test case to check non-encoding (raw) function.
2020-12-04 11:39:15 +05:30
Shrikant Sharat Kandula
9bbbf37ae0
Fix #1597: Add a signed issuer token to proxied requests, if configured (#1953) 2020-12-02 18:20:57 +05:30
Sumit Kumar
d347448b24
Propagte mysql test datasource failure to UI. (#2001)
1. Propagte mysql test datasource failure exception message to UI.
2. Change build TC to reflect the same.
2020-12-02 17:53:38 +05:30
Sumit Kumar
b3c3102c72
Add tests for mysql plugin to test all regularly used data types in mysql. (#1994) 2020-12-02 11:49:41 +05:30
Sumit Kumar
883fa44896
Make sql plugin use R2DBC driver instead of JDBC driver (#1936)
1. Add R2BC driver and remove JDBC driver usage in mysql plugin to make the plugin reactive.
2. Update dependencies in POM file.
3. Update mysql plugin to return result based on the type of sql query i.e select vs other queries. In case the queries are chained, then the last query is used for deciding the type.
4. Added a new TC for testing datasource and removed a non functional TC.
2020-11-28 18:04:56 +05:30
Trisha Anand
2062c60ca3
Moved all the scheduling of the plugin executions to bounded elastic instead of elastic. (#1931) 2020-11-26 17:50:43 +05:30
Arpit Mohan
36af9d5c5e Correcting the placeholder in firestore form.json 2020-11-24 11:00:27 +05:30
Shrikant Sharat Kandula
74cd362057
Firestore Integration (#1799)
* Adding the skeleton for Firestore integration

* Adding the datasource & query editor forms

Also adding the database changelog for the firestore plugin

Commenting out the firestore.close() connection because that causes issues with multiple Firestore tenants running in the same JVM.

* Adding the code for fetching the structure of collections from Firestore

* Use single document path field for Firestore

* Fix potential NPE when datasource destroy timeouts

* Work in progress on collection level ops for Firestore

* Get documents in a collection now works

* Add collection level querying support

* Mild refactoring

* Fix NPE when some fields are missing

* Hide clientJSON as a password field for Firestore

* Make collection level querying reactive

* Make reactive

* Validate before connecting

* Add tests for all supported methods in Firestore

* Fix forms for Firestore with hidden fields

* Hide limit and order by fields when not needed

* Restore log entry deleted by mistake

* Use S3 URL for Firestore/Firebase logo

* Add comments detailing why some code is commented

* Make parsing JSON reactive and fix subscribe calls

* Fix reactive scheduler

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-11-23 18:42:33 +05:30
Trisha Anand
c07264f1c1
Making Redis plugin blocking statements run on elastic thread pool (#1850) 2020-11-23 17:03:04 +05:30
Trisha Anand
772884e1a3
Making dynamo db's blocking commands run on elastic thread pool. (#1853) 2020-11-23 17:02:41 +05:30
Trisha Anand
d8cba1bf8c
Making MySql blocking commands run on elastic thread pool (#1862) 2020-11-23 17:02:18 +05:30
Trisha Anand
0bb99dd087
Elastic search plugin's blocking calls moved to elastic scheduler thread (#1855) 2020-11-23 17:01:34 +05:30
Trisha Anand
242afd5753
Making MS-SQL plugin blocking statements run on elastic thread pool (#1827)
* MS-SQL Plugin now creates connection and executes statements over elastic thread pool.

* Added a test to ensure that throwables are clean.
2020-11-23 11:28:01 +05:30
Trisha Anand
dc7a375543
Making postgres plugin blocking statements run on elastic threadpool. (#1821)
* Making postgres plugin blocking statements run on elastic threadpool.

* Moved the blocking calls to check for the connection validity, etc. also inside the Mono.fromCallable
2020-11-23 11:27:52 +05:30
Sumit Kumar
2c6d1bb361
Fix mongodb datasource test. (#1783)
1. Fix mongodb datasource cypress test failure.
2. Against certain mongodb instances, we expect to receive an exception of type "unauthorized" when testing datasource. Earlier, this case was caught and whitelisted until the recent change to replace mongodb infra with reactive mongodb infra.
2020-11-18 16:55:39 +05:30
Shrikant Sharat Kandula
2ca15ba57d
Fix #1758: columns duplicated in Postgres structure (#1767) 2020-11-18 11:19:55 +05:30
Sumit Kumar
2c2aa06e32
Add support for reactive streams with mongodb. (#1720)
Add support for reactive streams with mongodb. (fixes 1480)

1. Replace mongodb driver with reactive mongodb driver. Change APIs accordingly.
2. Use webflux + reactor framework to execute mongodb queries in event loop model.
3. Add test to test MongoPluginExecutor class' method "testDatasource".
2020-11-18 10:58:50 +05:30
Arpit Mohan
470f2fafcd
Adding support for https endpoints for ES plugin (#1445)
* Adding host:port validation checks to ES plugin & Redis plugin

Also correcting the assertions in the RedisPluginTest so that the error message on test failure is accurate.

* Removing the endpoint validation from datasourceServiceImpl

Moving the endpoint validation to the plugin implementation classes because there are databases that require complete HTTP URL in their configuration. Checking for http/https at the platform level affects the UX for the user & plugin developer when using a new integration. Hence, all plugins must implement their own client/server validations in their own implementations

* Adding tests to assert hostname validation in mysql & postgres plugins
2020-10-28 19:06:10 +05:30
Arpit Mohan
c6d4902e3d
Adding microsoft SQL server plugin integration (#1374) 2020-10-23 20:36:45 +05:30
akash-codemonk
9d27315213
Update datasource form config to include encrypted property (#1360) 2020-10-23 13:31:46 +05:30
Arpit Mohan
74fe08f8bf
Adding the database changelog for Redis (#1346)
1. Fixing the build by excluding the slf4j-api from redis-plugin pom.xml
2. Adding the editor.json and form.json for the query pane & datasource pane.
3. Adding array handling in the Redis response by feeding all the output into a "result" key
2020-10-22 16:40:19 +05:30
Prashant Chaubey
bf69c7d66b
Adding basic structure for plugin integrating with Redis (#1085)
Co-authored-by: nitesh261193 <nitesh261193@gmail.com>
2020-10-22 13:26:58 +05:30
dependabot[bot]
bc14b6ce4b
Bump junit in /app/server/appsmith-plugins/elasticSearchPlugin (#1331)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-21 22:20:49 +05:30
dependabot[bot]
a4872f3cb6
Bump junit in /app/server/appsmith-plugins/dynamoPlugin (#1335)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-21 17:57:44 +05:30
Shrikant Sharat Kandula
2a53abd8a6
Add DynamoDB Plugin (#1167)
* Added DynamoPlugin to integrate with DynamoDB

* Connection management for DynamoPlugin

* Process action from a single JSON object as input

* Moved ListTables command to separate class

* Add missing UI definition files

* Use reflection to build request objects for AWS SDK

* All DynamoDB actions are now run purely by reflection

* Serialize responses to JSON

* Remove some unused/commented code and some refactorings

* Add non-working test with generic dynamodb container

* Added working test for ListTables action

* Added test for PutItem action

* Add tests for get and update actions

* Added comments and some refactoring

* Removed unused Command class.

* Added more tests for map to SDK object conversion

* Add templates

* Add option to set an endpoint override

* Fix Dynamo plugin tests when ~/.aws is missing

* Add documentation link for DynamoDB plugin

* Fix validation checks

* Remove debug log

* Added comments on expected query structure

* Fix incorrect error condition with incorrect request format

* Add comment for converting action to method name

* Error out if region is missing

* Remove unused throws declaration

* Use rich form for action configuration

* Removed templates

* Use PNG for logo images

* Use PNG logos for all plugins

* Avoid hard-coded field names

* Change logo to PNG only for ElasticSearch for now

* Wrap errors in AppsmithPluginException

* Typo

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Fix changeset order number

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Minor refactoring and fixed error messaging

Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-10-21 17:45:54 +05:30
Shrikant Sharat Kandula
fa1a0549ff
Add ElasticSearch integration (#1181)
* add elasticSearchPlugin

* Fix container startup in tests

* Add elasticsearch dependency

* Get plugin to a base working state

* Add templates and tests for all Document APIs

* Add support for bulk queries

* Add test and template for bulk operations

* Use rich form for action configuration

* Add test API for ElasticSearch

* Use rich form's values for plugin execution

* Add authorization header support

* Fix tests after config object use changes

* Add test for bulk requests with nd-json body

* Remove templates and minor refactoring

* Fix potential NPE with null body

Co-authored-by: Trisha Anand <trisha@appsmith.com>

* Add datasource validation for endpoint

* Wrap errors in AppsmithPluginException

Co-authored-by: Suman Patra <spatra@akamai.com>
Co-authored-by: Trisha Anand <trisha@appsmith.com>
2020-10-21 15:34:29 +05:30
Arpit Mohan
2bb093a5d7 Removing Mssql plugin 2020-10-20 22:27:29 +05:30
Arpit Mohan
3164c4a7d6
Fixing the build for mssql plugin (#1313) 2020-10-20 14:52:57 +05:30
Arpit Mohan
45e436a7c6 Merging latest master into release 2020-10-19 23:02:24 +05:30
Nikhil Nandagopal
77e1998e74
updated query template to have an explanatory comment (#1260) 2020-10-19 15:10:21 +05:30
Shrikant Sharat Kandula
a8d5138541
MS SQL Plugin implementation (#1272)
* Working version of MsSQL plugin

* Add tests for mssql-plugin
2020-10-19 15:06:08 +05:30
João Rafael
85d5477039
BugFix (#944): Add HTTP prefix to URLs in RestApiPlugin and RapidApiPlugin (#1266)
Also, add null check before adding HTTP prefix. This avoids null pointer exceptions and lets the UriBuilder deal with it
2020-10-19 12:19:04 +05:30
akash-codemonk
0772bffe23
Create a new input field which outputs a key value pair (#1226) 2020-10-16 13:04:32 +05:30
dependabot[bot]
1157ecbbe6
Bump junit in /app/server/appsmith-plugins/rapidApiPlugin (#1159)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-13 14:35:29 +05:30
dependabot[bot]
2b70011f66
Bump junit in /app/server/appsmith-plugins/mongoPlugin (#1160)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-13 14:35:00 +05:30
dependabot[bot]
d80a70de8d
Bump junit in /app/server/appsmith-plugins/postgresPlugin (#1162)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-13 14:33:24 +05:30
dependabot[bot]
f6b1ff2ed4
Bump junit in /app/server/appsmith-plugins/mysqlPlugin (#1163)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-13 14:33:02 +05:30
dependabot[bot]
43f1478d81
Bump junit in /app/server/appsmith-plugins/restApiPlugin (#1164)
Bumps [junit](https://github.com/junit-team/junit4) from 4.11 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.11.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.11...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-13 14:32:28 +05:30
Shrikant Sharat Kandula
13ddcc0cc9
Upgrade pf4j & test containers and fix plugin tests (#1156) 2020-10-13 13:42:14 +05:30
Shrikant Sharat Kandula
4f3de3ab9f
Datasource structure support for MongoDB (#641)
* Added structure for MongoDB datasources

* Fixed tests for MongoDB template queries
2020-10-01 10:41:29 +05:30
Shrikant Sharat Kandula
2bb2ad4d19
Fix zero date-times in MySQL throwing exceptions (#705) 2020-09-24 14:36:22 +05:30
Shrikant Sharat Kandula
de1ea7dfb4
Add option to override server timezone for MySQL datasources (#659)
* Add option to override server timezone for MySQL datasources

* Added test for server timezone override for MySQL

* Fix serverTimezone property config
2020-09-23 10:07:33 +05:30
Shrikant Sharat Kandula
6ef5838cd8
Add UPDATE query templates for Postgres and MySQL plugins (#646) 2020-09-21 17:56:24 +05:30
Shrikant Sharat Kandula
34edbe87e3
Fix unquoted identifiers in generated queries for Postgres (#639) 2020-09-21 16:28:14 +05:30
Shrikant Sharat Kandula
75ba90928e
Add datasource structure caching and MySQL structure support (#553)
* Implement caching for datasource structure

* Avoid using final fields so spring-data can load objects

* Use type variable for getStructure method

* Initial version with base structure for MySQL plugin

* Add tests for MySQL plugin structure

* Add sorting for keys in Postgres structure as well

* Show "primary key" instead of just "primary"

* Refactor to reduce inline magic strings
2020-09-17 13:59:46 +05:30
Shrikant Sharat Kandula
e551043080
Fix plugin executions/test/structure breaks when auth is null (#544) 2020-09-15 12:09:49 +05:30
Shrikant Sharat Kandula
6c7e45d010
Add a connection type variable for Plugin implementations (#531)
* Add a connection type variable for Plugin implementations

This type variable is intended to represent the type of the
connection object, if any, that the plugin will use. This will
help make the implementations more robust by leveraging Java's
type checking instead of rudimentary type casts over the
connection objects.

* Fix missing typevar usage
2020-09-14 20:36:47 +05:30
Shrikant Sharat Kandula
3f5930e52e
Add datasource structure support for DB plugins (#523)
* Base interface for getting datasource structure for databases

* Add keys and constraints to structure for Postgres datasources

* Use connection from datasource context for computing structure

* Refactor context retrying into a separate method

* Add base datastructures for templates in entity explorer

* Fix spring circular dependency

* Add test for postgres datasource structure

* Generate column names and sample values for INSERT query

* Add LIMIT clause to generated SELECT query

* Fix tests for generated SELECT query

* Minor refactoring
2020-09-14 18:59:11 +05:30
Arpit Mohan
2a3ccd7e25
Removing SSH Tunnel from Mongo & Postgres plugins (#529)
We don't yet support this feature hence removing it from the UI. Will add it back again once the backend supports SSH tunnelling.
2020-09-10 18:29:49 +05:30
Shrikant Sharat Kandula
3353962719
Fix MongoDB plugin update commands produce an empty response (#469) 2020-09-04 10:56:09 +05:30
Shrikant Sharat Kandula
59349fd03e
Fix column alias names in MySQL actions (#466)
* Fix aliases not showing up for MySQL actions

* Fix date column display for MySQL actions

* Fix datetime columns for MySQL actions

* Add support for timestamp and year data types for MySQL actions

* Fix column label for MySQL plugin

* Add tests for MySQL temporal data types

* Add tests for alias columns in MySQL and Postgres
2020-09-02 17:19:41 +05:30
akash-codemonk
8f0015eaf3
Show validation errors if any for keyvalue fields (#445)
* Update host field with validation properties
2020-08-31 10:45:04 +05:30
Shrikant Sharat Kandula
eb7dcd69a5
Fix MongoDB datasource testing fails due to unauthorized error (#402) 2020-08-24 12:23:38 +05:30
Shrikant Sharat Kandula
27b7f6c5e2
Fix test DS fails on datasources with direct mongo connection (#400) 2020-08-22 07:40:02 +05:30
Shrikant Sharat Kandula
3e1522628f
Fix numbers being converted to floats in JSON Post body (#241) 2020-08-11 14:07:34 +05:30
Shrikant Sharat Kandula
b511c3ada9
Change return type of plugin execution to be more specific (#247) 2020-08-10 14:41:32 +05:30
Nikhil Nandagopal
f7cf7e1182
Fix/copy changes (#210)
* Added information to setup domain

* Fixed incorrect var reference

* Updated documentation message

* Updated env template

* updated template

* removed debug echo

* Updated Script

* Updated Text

* Removed option to connect to external mongo for fresh installs
Exit script of docker desktop is not installed

* Updated docker installation explanation

* added a question to skip custom domain if user is installing locally

* Inverted script question and

* Removed question to determine local installation

* Updated Popup CTA to Modal
Updated query templates to contain bindings
Added a message to display on API / Query errors

* updated styles for evaluated value
updated styles for auto complete

* added spaces to questions

Co-authored-by: Nikhil Nandagopal <nikhil@appsmith.com>
2020-08-04 17:51:02 +05:30
Trisha Anand
b5841e96d2
GET plugin form now returns json to render both datasource configuration form and the editor query pane (#199)
Keeping the function to read plugin resource generic for any type of resource. Now the parent function can also conditionally decide which plugin would require to read which resources from the filesystem.

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
2020-08-03 16:37:28 +05:30
Shrikant Sharat Kandula
dfcabab4cc
Handle stale database connection from datasources (#151)
* Handle stale database connection from datasources

* Fix potential secondary case of stale connection error

* Fix Postgres to MySQL

* Move validity check timeout to a constant field

* Add test for recovery when stale connection error is thrown
2020-07-24 12:18:25 +05:30
Shrikant Sharat Kandula
ca73c3e625
Copy plugin dependencies to their target/lib to fix driver not found errors (#152)
The plugin class loader from Pf4J looks for jars under target/lib
to use to load any classes that are missing target/classes. This
PR adds the `maven-dependency-plugin` to copy the jars to this
folder automatically so the classes are available during
development.
2020-07-24 09:49:17 +05:30
Shrikant Sharat Kandula
a46d355422
Fix class name casing for MySqlPlugin (#148) 2020-07-23 17:33:34 +05:30
Arpit Mohan
f9d4262d7e
Removing the default value for postgresql and mysql ports (#147) 2020-07-23 10:40:18 +05:30
Arpit Mohan
690c327f2c
Adding default values for mysql datasource (#140)
Also correcting icon details to mysql plugin migration.
2020-07-22 14:00:15 +05:30
nupur
d0e60a1890
Mysql plugin integration (#53)
This commit adds the Mysql plugin to the Appsmith server. We also add a migration to ensure that this plugin is installed by default for all existing organizations. The migration also adds the plugin details into the DB.

Also adding the test cases for mysql plugin.

Co-authored-by: Arpit Mohan <arpit@appsmith.com>
Co-authored-by: Hetu Nandu <hetu@appsmith.com>
Co-authored-by: Arpit Mohan <me@arpitmohan.com>
Co-authored-by: Nupur Singhal <nupursinghal@Nupurs-MacBook-Air.local>
2020-07-21 16:01:42 +05:30
Trisha Anand
8734067cad
Resolving the dependabot vulnerabilities. (#69) 2020-07-09 21:12:16 +05:30
Shrikant Sharat Kandula
ff3c0c0451 Fix column ordering not being consistent in responses from PostgresPlugin 2020-07-07 10:56:56 +05:30
Shrikant Sharat Kandula
8c113834d6
Fix error when dealing with null value columns in Postgres plugin (#46) 2020-07-07 10:52:09 +05:30
Shrikant Sharat Kandula
afe0dfdc75
Dates from Postgres queries now show up as ISO date strings (#5)
* Dates from Postgres queries now show up as ISO date strings
* Use constant for date column name in PostgresPlugin
* Fix formats for more date-time types on Postgres
* Add support for time and timestamp data types in Postgres plugin
* Add support for timestamptz column data type in Postgres plugin
* Add support for interval data type in PostgresPlugin
2020-07-06 18:52:41 +05:30
Shrikant Sharat Kandula
f0658d69b2
Read RapidAPI variables directly form environment (#38) 2020-07-06 14:56:39 +05:30
Shrikant Sharat Kandula
56547ec02f
Move application configuration to be loaded from environment variables (#23)
* Move application configuration to be loaded from environment variables
* Remove unused sentry.properties
* Make missing value sentinel a constant and ignore all *.env files
* Removed now-used ACL properties
* Prefix RapidAPI environment variable with APPSMITH_
* Fix application properties not being loaded into static fields
* Remove application-test.properties file
* Add required env variables for test in GitHub
* Quote URLs for MongoDB and Redis in test config
* Change RAPIDAPI to RAPID_API in environment variable names
* Source .env file in the root of repo in start script
2020-07-06 14:35:56 +05:30
Shrikant Sharat Kandula
0dd1114917
Clean up MongoDB object types before sending data to client (#8) 2020-07-01 16:40:39 +05:30
Arpit Mohan
b63ca6726d Merge branch 'feat/plugin-templates' into 'release'
Add server-side templates support for plugins

Two main themes in this MR:

1. Add support for saving query templates as resource files inside a plugin. This has been done for both Postgres and MongoDB plugins, based on current template contents.
2. Loading of form JSON is now reactive. The blocking call has been moved inside a `Mono.fromSupplier`.
3. The loading of from JSON as well as the templates is cached and are loaded on-demand. This means that the templates are loaded once for a plugin through the lifetime of the server process, and that they are loaded only at the first time they are needed.
4. If loading of these resources fails, we try again when they are needed the next time.

See merge request theappsmith/internal-tools-server!385
2020-06-24 11:08:25 +00:00
Shrikant Kandula
eee2cfcaff Add server-side templates support for plugins 2020-06-24 11:08:25 +00:00
Shrikant Kandula
40b5466bd8 Fill response body with value when running findAndModify Mongo query 2020-06-24 11:05:19 +00:00
Shrikant Kandula
522e6221f7 Make NO_SSL the default for Mongo datasources 2020-06-24 11:02:34 +05:30
Trisha Anand
cd30e36eaa Hacky solve for setting the action execution request in case of failures in URL/HTTP Method/etc. 2020-06-19 23:43:32 +05:30
Trisha Anand
0603da29ee User test - Add request URL and http method to the execution result 2020-06-19 16:24:58 +00:00
Trisha Anand
73757c3425 Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	.gitignore
#	appsmith-plugins/mongoPlugin/plugin.properties
#	appsmith-plugins/postgresPlugin/plugin.properties
#	appsmith-plugins/rapidApiPlugin/plugin.properties
#	appsmith-plugins/restApiPlugin/plugin.properties
#	appsmith-plugins/restApiPlugin/src/main/java/com/external/plugins/RestApiPlugin.java
#	appsmith-server/src/main/java/com/appsmith/server/constants/FieldName.java
#	appsmith-server/src/main/java/com/appsmith/server/repositories/ActionRepository.java
#	appsmith-server/src/main/java/com/appsmith/server/services/ActionServiceImpl.java
#	appsmith-server/src/main/java/com/appsmith/server/services/DatasourceContextServiceImpl.java
#	appsmith-server/src/main/java/com/appsmith/server/services/DatasourceServiceImpl.java
#	appsmith-server/src/test/java/com/appsmith/server/services/ActionServiceTest.java
#	appsmith-server/src/test/java/com/appsmith/server/services/ApplicationServiceTest.java
#	appsmith-server/src/test/java/com/appsmith/server/services/LayoutServiceTest.java
#	appsmith-server/src/test/java/com/appsmith/server/services/PageServiceTest.java
#	build.sh
2020-06-12 19:14:31 +05:30
Arpit Mohan
01737b9599 Experimenting with maven-shade-plugin to create a fat-jar of the postgres dependency.
Will have to do this for all plugins. Currently, it's not registering the plugin with the SpringPluginManager
2020-06-10 11:11:23 +00:00
Shrikant Kandula
1ce336257c Mark any 2xx status code in REST API plugin as successful execution. 2020-06-10 10:51:07 +00:00
Arpit Mohan
3cf8ff008f Hacky fix for the postgres plugin to work. Including the dependency in the appsmith-server/pom.xml file instead of the plugin 2020-06-10 10:46:09 +05:30
Arpit Mohan
bbd33c2968 Removing the query field in ActionConfiguration and using String body as the field to store the query
This is to simplify the query pane on the frontend client. The client doesn't need to have separate interfaces for sql and non-sql plugins. All queries will be sent to the server in the form of a String that is parsed in different formats based on the plugin.

Also adding test cases for PostgresPlugin. Used TestContainers to simulate the postgres db in Docker inside the Java test itself. Very useful.
2020-06-09 12:12:27 +00:00
Arpit Mohan
99e7519550 Handling form data via the field bodyFormData in ActionConfiguration
This is because the client sends us the data for form-data in the form of a list of Property fields with keys and values. This is consistent with how the client stores & renders headers & query parameters as well.
For MediaType application/x-www-form-urlencoded we will use the bodyFormData field.
2020-06-09 05:48:16 +00:00
Shrikant Kandula
c18c344f4b Don't fail after executing a non-SELECT query on Postgres. 2020-05-15 18:13:36 +05:30
Arpit Mohan
fb9e9fbf4c Request body and header in Action Execution Response 2020-05-14 02:08:46 +00:00
Trisha Anand
5829a92998 Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	appsmith-server/src/main/java/com/appsmith/server/services/ActionServiceImpl.java
2020-05-13 23:37:31 +05:30
Shrikant Kandula
9c48f42990 Rename ActionExecutionResult.shouldCacheResponse -> isExecutionSuccess. 2020-05-12 18:25:49 +05:30
Nikhil Nandagopal
5dad85ff3e Update form.json 2020-05-12 09:48:56 +00:00
Shrikant Kandula
f3e448019d Auth mechanism is not added to URI in the MongoPlugin. Fixed now. 2020-05-11 12:16:09 +05:30
Trisha Anand
f7bb87824c Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	appsmith-server/src/main/java/com/appsmith/server/domains/User.java
2020-05-08 20:57:51 +05:30
Shrikant Kandula
3e2dea8f84 Merge branch 'bug/hide-exception-class-in-plugin-error-message' into 'release'
Hide Exception class details in the Plugin error message.

See merge request theappsmith/internal-tools-server!321
2020-05-05 11:08:38 +00:00
Shrikant Kandula
e99c104fe7 Hide Exception class details in the Plugin error message. 2020-05-05 16:34:09 +05:30
Nikhil Nandagopal
8f95fe22a9 Update form.json 2020-05-05 10:46:58 +00:00
Nikhil Nandagopal
c4f3ccfd8b Update form.json 2020-05-05 10:34:02 +00:00
Shrikant Kandula
57dc2205e2 Add missing default database field in Mongo plugin form. 2020-05-05 13:39:03 +05:30
Trisha Anand
c43218eea6 Merge branch 'release' into feature/acl-spring-object 2020-05-01 17:05:43 +05:30
Shrikant Kandula
8ea8fb295e Handle 500 when JSON body doesn't make up an object data type. 2020-04-30 13:32:24 +00:00
Trisha Anand
bc99ce9244 Merge branch 'release' into feature/acl-spring-object 2020-04-30 17:50:32 +05:30
Shrikant Kandula
c8e8c9136d Check the value of Content-Type before trying to make an HTTP call. 2020-04-30 16:50:17 +05:30
Shrikant Kandula
50a8bad19e Merge branch 'bug/restapi-test-without-port' into 'release'
Fix testing of REST API datasources fails when no port is set.

See merge request theappsmith/internal-tools-server!307
2020-04-30 06:02:28 +00:00
Shrikant Kandula
be7f1c0a81 Fix testing of REST API datasources fails when no port is set. 2020-04-30 06:02:28 +00:00
Shrikant Kandula
06e85c308f Update form.json for datasource configurations. 2020-04-29 16:25:30 +05:30
Trisha Anand
2d1fe9d8b4 Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	appsmith-interfaces/src/main/java/com/appsmith/external/models/SSHPrivateKey.java
#	appsmith-server/src/main/java/com/appsmith/server/filters/AclFilter.java
#	appsmith-server/src/main/java/com/appsmith/server/services/CurlImporterService.java
#	appsmith-server/src/test/java/com/appsmith/server/services/CurlImporterServiceTest.java
2020-04-28 18:13:06 +05:30
Shrikant Kandula
23bd4e1722 Add NO_SSL option to SSL authType to turn off SSL explicitly. 2020-04-28 12:31:34 +00:00
Shrikant Kandula
e0880c7d31 Support separate default database for MongoPlugin, besides authDatabase. 2020-04-23 11:09:02 +00:00
Trisha Anand
a8f32d8b2a Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	appsmith-server/src/main/java/com/appsmith/server/services/MarketplaceService.java
2020-04-23 14:45:40 +05:30
Nikhil Nandagopal
18acf373f5 Update form.json 2020-04-23 06:08:25 +00:00
Trisha Anand
dacc6a5c9e The header key should be matched to all possible variations : Content-Type, content-type, etc. This fixes that. 2020-04-22 18:13:31 +05:30
Shrikant Kandula
3ad98a4367 Support SSL connections with self-signed from MongoPlugin. 2020-04-21 18:53:30 +05:30
Shrikant Kandula
3dfc62034f Merge branch 'feature/datasource-form-config-apis' into 'release'
Add form config JSONs for individual plugins and an API for GETting them.

See merge request theappsmith/internal-tools-server!295
2020-04-21 12:23:23 +00:00
Shrikant Kandula
58c0f94508 Add form config JSONs for individual plugins and an API for GETting them. 2020-04-21 17:42:14 +05:30
Shrikant Kandula
9f2427f1df Merge branch 'bug/mongo-plugin-test-on-unavailable-host' into 'release'
Fix MongoPlugin test returning success even when host is unavailable.

See merge request theappsmith/internal-tools-server!294
2020-04-21 10:22:50 +00:00
Shrikant Kandula
d94a231934 Fix MongoPlugin test returning success even when host is unavailable. 2020-04-21 15:39:44 +05:30
Shrikant Kandula
a49ef95d5b Fix 500 on invalid port sent for restapi plugin test request. 2020-04-21 13:40:12 +05:30
Trisha Anand
373c9ac738 Code formatting corrected. 2020-04-20 18:17:25 +05:30
Trisha Anand
6be0b7ae23 Merge branch 'release' into feature/acl-spring-object
# Conflicts:
#	appsmith-server/pom.xml
#	appsmith-server/src/main/java/com/appsmith/server/migrations/DatabaseChangelog.java
#	appsmith-server/src/main/java/com/appsmith/server/repositories/BaseRepositoryImpl.java
#	appsmith-server/src/main/java/com/appsmith/server/services/LayoutActionServiceImpl.java
#	appsmith-server/src/test/java/com/appsmith/server/services/OrganizationServiceTest.java
2020-04-20 18:13:55 +05:30
Shrikant Kandula
ee556b729c Fix 500 error when authentication.type is not provided in request body. 2020-04-17 14:35:53 +05:30
Arpit Mohan
46879fae2b Committing the plugin.properties to let us run the code from IntelliJ 2020-04-17 13:35:07 +05:30
Shrikant Kandula
08b7f51d5d Datasource API cleanup and better error reporting 2020-04-17 07:27:56 +00:00
Trisha Anand
801cd59c14 Merge branch 'bug/marketplce-fixes' into 'release'
Updated Rapid API key. Also, now URL Encoding the route parameters as well.

See merge request theappsmith/internal-tools-server!285
2020-04-16 15:59:56 +00:00
Trisha Anand
8aaff70ef0 Updated Rapid API key. Also, now URL Encoding the route parameters as well. 2020-04-16 21:13:37 +05:30
Shrikant Kandula
822afdc064 Rich datasource support for MongoPlugin 2020-04-16 08:21:40 +00:00
Shrikant Kandula
2dbf9d1c6b Test API for data sources 2020-04-15 10:02:09 +00:00
Shrikant Kandula
abd9235360 Richer plugin validations 2020-04-10 09:59:50 +00:00
Shrikant Kandula
91dd8bf5c3 Fix old enums being used in Postgres plugin. Build failed because of this. 2020-04-08 12:45:18 +00:00
Shrikant Kandula
065f0f1c3d Suppress redundant-if warning in datasource validation method.
This method can be simplified, but is more readable this way.
2020-04-08 11:50:58 +00:00
Trisha Anand
16742403ec Merge branch 'bug/restapi-data-buffer-limit-exception' into 'release' 2020-04-08 12:11:53 +05:30
Shrikant Kandula
ff6b0ce6bc Increase restapi client buffer size from 256KB to 10MB. 2020-04-07 11:20:46 +00:00
Trisha Anand
5911234276 To ensure that special characters like "\n", "\t", etc are preserved in the request json body, convert the json string into object. 2020-04-03 14:27:10 +00:00
Shrikant Kandula
1f524827b9 Datasource CRUD APIs 2020-04-01 08:50:36 +00:00
Trisha Anand
44d5dccbbb Rest API and Rapid api plugin url encode the query parameters. The Providers returned are sorted by sortOrder in ascending order 2020-03-18 20:35:50 +05:30
Trisha Anand
015713f409 1. Add to Page changes : In case the sample response is null, don't set the cached response for the action.
2. Add to Page changes : Documentation object has been added in Action to handle the extra Template documentation for actions that have been imported from 3p marketplace
3. Added basic structure for rapid api plugin by copy pasting the rest api plugin
2020-03-17 18:19:22 +00:00
Trisha Anand
b17fae8e44 1. Add to Page changes : In case the sample response is null, don't set the cached response for the action.
2. Add to Page changes : Documentation object has been added in Action to handle the extra Template documentation for actions that have been imported from 3p marketplace
3. Added basic structure for rapid api plugin by copy pasting the rest api plugin
2020-03-11 17:16:15 +00:00
Arpit Mohan
249bbbde39 Adding the field shouldCacheResponse to the ActionExecutionResult to make the response caching generic across various plugins 2020-02-25 11:36:02 +00:00
Trisha Anand
2e11a5c2d5 Added datasource configuration to the provider to support the provider level configurations in rapid api 2020-02-14 06:32:34 +00:00
Trisha Anand
d3769bad62 In case of duplicate key, send the application error code instead of http error code so that frontend can handle the duplicate key error gracefully 2020-01-29 10:22:21 +00:00
Trisha Anand
d1705a1931 Corrected receiving the response from String to byte[] array. This ensures that binary responses can also be handled. Added handling of content type Image. 2020-01-24 07:49:52 +00:00
Trisha Anand
576453639f Converted Exceptions thrown to Appsmith Plugin Exception so that its handled correctly. 2020-01-15 17:59:11 +05:30
Trisha Anand
670ca4cb7e Added log for execute action 2020-01-15 09:13:27 +00:00
Trisha Anand
f4a2a73abe In case of non json results, set the result body as string, otherwise parse the json and then store it as jsonNode 2020-01-14 09:48:43 +00:00
Trisha Anand
71a8936e10 Handles http redirect upto 5 times. In case it exceeds the same, it would error out. 2019-12-23 09:12:15 +00:00
Arpit Mohan
c5445533f3 Merge branch 'master' into 'release'
Merging master into release to sync up the branches

See merge request theappsmith/internal-tools-server!78
2019-11-18 08:46:59 +00:00
Arpit Mohan
8fbf61502f Creating dockerfile that creates the server image.
Also modifying .gitlab-ci file to push docker image to the registry
2019-11-14 12:50:37 +00:00
Trisha Anand
31cf94f08e 1. Added datasource validator function in the plugin interface which simply returns true for all the current plugins.
2. Added static method getPluginExecutor as a util function which removes duplicate code from across different files.
2019-11-14 08:50:02 +00:00
Arpit Mohan
aac31235f6 Merge branch 'master' of gitlab.com:theappsmith/internal-tools-server
# Conflicts:
#	appsmith-plugins/restApiPlugin/src/main/java/com/external/plugins/RestApiPlugin.java
#	appsmith-server/src/main/java/com/appsmith/server/services/ResourceContextServiceImpl.java
2019-11-07 14:28:09 +05:30
Trisha Anand
63c0f07708 Query param handling has been added to Rest API plugin using URIComponentsBuilder 2019-11-06 12:30:56 +00:00
Arpit Mohan
bcda3f0feb Renaming all the references of resource to datasource
This renaming is reflective of the entity and it's potential values in the future.
2019-11-06 16:25:08 +05:30
Arpit Mohan
a61b9ab325 Handling null values in the request body 2019-11-05 12:25:08 +00:00
Arpit Mohan
3622d8b0d3 Converting actionConfiguration to a string to extract mustache keys
Also making jsonPathKeys a read-only field. Cannot be written via the API.
2019-11-05 10:40:09 +00:00
Trisha Anand
daeba007a1 Bug/rest api 2019-11-04 11:20:18 +00:00
Trisha Anand
84837fe57f Mongo Plugin works here. Barring the scenarios where the query json contains special characters in keys ($, .) it works properly. 2019-10-18 08:27:19 +00:00
Trisha Anand
e1d59ca3a6 Multi data source support for plugins using Resource Context 2019-10-11 10:32:18 +00:00
Trisha Anand
8658df95a9 All action executions now return object of type ActionExecutionResult. RestApiPlugin returns the same object which contains statusCode, headers and body. 2019-09-30 18:17:35 +00:00
Trisha Anand
566a245451 Segment & Rollbar Integration 2019-09-25 16:20:51 +00:00
Trisha Anand
bec8b2e0a1 Adding the docker-compose up command to the build
This should ideally run the mongo-seed container to restore the DB before each run
2019-09-24 12:14:41 +00:00
Arpit Mohan
b618bfc5d8 Adding a very initial version of the RestApiPlugin
Requires a bunch of testing for corner cases and error scenarios.
2019-09-17 12:24:45 +00:00
Arpit Mohan
0edc0f6363 Adding the executeAction API in the ActionController.
Also changed the interface for the PluginExecutor to include the resourceConfig and ActionConfig as well.
2019-09-17 12:18:23 +00:00
Arpit Mohan
b3c987a9f9 Convert the project into a multi-module structure
We are moving to a multi-module structure so that different parts of the codebase can be exposed to the public while others can remain private. Using pf4j for plugin framework.

Also adding a build script `build.sh` which compiles the code and creates the `dist` folder for distribution purposes. Now we can build the code via

```
$ ./build.sh -DskipTests
```
2019-09-16 11:21:57 +00:00