Commit graph

190 commits

Author SHA1 Message Date
Jan Oberhauser 53234770a7 🐛 Fix issue of current execution query with unsaved running workflow 2021-02-11 14:55:59 +01:00
Omar Ajoue e53efdd337
Separate webhooks from core (#1408)
* Unify execution ID across executions

* Fix indentation and improved comments

* WIP: saving data after each node execution

* Added on/off to save data after each step, saving initial data and retries working

* Fixing lint issues

* Fixing more lint issues

*  Add bull to execute workflows

* 👕 Fix lint issue

*  Add graceful shutdown to worker

*  Add loading staticData to worker

* 👕 Fix lint issue

*  Fix import

* Changed tables metadata to add nullable to stoppedAt

* Reload database on migration run

* Fixed reloading database schema for sqlite by reconnecting and fixing postgres migration

* Added checks to Redis and exiting process if connection is unavailable

* Fixing error with new installations

* Fix issue with data not being sent back to browser on manual executions with defined destination

* Merging bull and unify execution id branch fixes

* Main process will now get execution success from database instead of redis

* Omit execution duration if execution did not stop

* Fix issue with execution list displaying inconsistant information information while a workflow is running

* Remove unused hooks to clarify for developers that these wont run in queue mode

* Added active pooling to help recover from Redis crashes

* Lint issues

* Changing default polling interval to 60 seconds

* Removed unnecessary attributes from bull job

* Added webhooks service and setting to disable webhooks from main process

* Fixed executions list when running with queues. Now we get the list of actively running workflows from bull.

* Add option to disable deregistration of webhooks on shutdown

* Rename WEBHOOK_TUNNEL_URL to WEBHOOK_URL keeping backwards compat.

* Added auto refresh to executions list

* Improvements to workflow stop process when running with queues

* Refactor queue system to use a singleton and avoid code duplication

* Improve comments and remove unnecessary commits

* Remove console.log from vue file

* Blocking webhook process to run without queues

* Handling execution stop graciously when possible

* Removing initialization of all workflows from webhook process

* Refactoring code to remove code duplication for job stop

* Improved execution list to be more fluid and less intrusive

* Fixing workflow name for current executions when auto updating

*  Right align autorefresh checkbox

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-02-09 23:32:40 +01:00
Omar Ajoue 7a3aaf8a24
Unify execution id + Queue system (#1340)
* Unify execution ID across executions

* Fix indentation and improved comments

* WIP: saving data after each node execution

* Added on/off to save data after each step, saving initial data and retries working

* Fixing lint issues

* Fixing more lint issues

*  Add bull to execute workflows

* 👕 Fix lint issue

*  Add graceful shutdown to worker

*  Add loading staticData to worker

* 👕 Fix lint issue

*  Fix import

* Changed tables metadata to add nullable to stoppedAt

* Reload database on migration run

* Fixed reloading database schema for sqlite by reconnecting and fixing postgres migration

* Added checks to Redis and exiting process if connection is unavailable

* Fixing error with new installations

* Fix issue with data not being sent back to browser on manual executions with defined destination

* Merging bull and unify execution id branch fixes

* Main process will now get execution success from database instead of redis

* Omit execution duration if execution did not stop

* Fix issue with execution list displaying inconsistant information information while a workflow is running

* Remove unused hooks to clarify for developers that these wont run in queue mode

* Added active pooling to help recover from Redis crashes

* Lint issues

* Changing default polling interval to 60 seconds

* Removed unnecessary attributes from bull job

*  Improved output on worker job start

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-02-09 08:59:32 +01:00
Jan Oberhauser 5398a06ff2 Add variable $mode 2021-01-29 09:31:40 +01:00
Ben Hesseldieck 8764171989
🎨 small webhook refactorings (#1383)
* 🧹 clean up forgotten leftover

* 🎨 reset req.params

* 🐛 Bugfix and minor change on request parameters

*  Minor improvements on request parameters

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-01-28 15:44:10 +01:00
Ben Hesseldieck d395498882
Add support for webhook route parameters (#1343)
* 🚧 add webhookId to URL

* 🚧 add webhookId to webhook entity, 🔧 refactor migrations

* 🚧 🐘 postgres migration

* 🚧 add mySQL migration

* 🚧 refactor mongoDB

* 🚧 add webhookId to IWebhookDb

* 🚧 starting workflow with dynamic route works

*  production dynamic webhooks complete

* 🎨 fix lint issues

* 🔧 dynamic path for webhook-test complete

* 🎨 fix lint issues

* 🎨 fix typescript issue

*  add error message for dynamic webhook-test

* 🔨 improve handling of leading `/`

* 🚧 add webhookId to URL

* 🚧 add webhookId to webhook entity, 🔧 refactor migrations

* 🚧 🐘 postgres migration

* 🚧 add mySQL migration

* 🚧 refactor mongoDB

* 🚧 add webhookId to IWebhookDb

* 🚧 starting workflow with dynamic route works

*  production dynamic webhooks complete

* 🎨 fix lint issues

* 🔧 dynamic path for webhook-test complete

* 🎨 fix lint issues

* 🎨 fix typescript issue

*  add error message for dynamic webhook-test

* 🔨 improve handling of leading `/`

*  Fix issue that tab-title did not get reset on new workflow

* Revert " Fix issue that tab-title did not get reset on new workflow"

This reverts commit 699d0a8946.

* 🔧 reset params before extraction

* 🐘 removing unique constraint for webhookId

* 🚧 handle multiple webhooks per id

* 🔧 enable webhook-test for multiple WH with same id

* 🐘 add migration for postgres

*  add mysql migration

* 🎨 fix lint issue

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2021-01-23 20:00:32 +01:00
Jan Oberhauser 0f95ad4446 🐛 Fix retry buy with current workflow #1144 2020-11-11 10:24:10 +01:00
Jan Oberhauser 0f0dfa2191 Minor improvements and lint-fix 2020-10-28 23:38:53 +01:00
AxelRueweler 5460b69418
Select executions by the firstId (#1108)
* Add option to get the full execution data from the server.

* Select Executions by the firstId.
2020-10-28 23:34:16 +01:00
Jan Oberhauser 609a2a4791 👕 Fix lint issue 2020-10-26 21:26:52 +01:00
AxelRueweler 7aeafc9f27
Add option to get the full execution data from the server. (#1101) 2020-10-26 21:19:44 +01:00
Jan Oberhauser 53162ba462 Minor improvements on loading parameters on demand 2020-10-22 17:32:05 +02:00
Omar Ajoue 37f787d7b2
Load node properties on demand (#1089)
*  Changed rest api endpoint to omit node properties by default.
 Created another endpoint to return all node information based on a list of names

* refactor: changed endpoint to POST instead of GET

* Changed properties to be optional for node description

* Removed eager loading for node properties.

All nodes will have their properties fetched when used in a workflow.
Works when opening an already saved workflow, creating a new one from
scratch or pasting JSON / URLs.

* Removing unnecessary dependency
2020-10-22 17:24:35 +02:00
Jan Oberhauser 40c2acd77b 👕 Fix lint issue 2020-10-22 15:46:03 +02:00
Ben Hesseldieck 99b637330b
add afterDelete hook (#1054) 2020-10-14 17:47:43 +02:00
Ben Hesseldieck 28074d94a4
Add hooks (#1053)
*  add 2 hooks

*  Fix issue that if hook errors n8n would not shut down

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2020-10-14 16:38:48 +02:00
Jan Oberhauser 23dbdbc169 Add hook which allows to overwrite frontend settings 2020-09-30 16:11:45 +02:00
Jan Oberhauser f1680386ca Get OAuth-Callback URLs from backend 2020-09-30 15:57:40 +02:00
Jan Oberhauser 2072f53316 Change bcrypt library to make it work better in windows 2020-09-28 14:31:14 +02:00
Jan Oberhauser 3374fda7c6 Make it possible to open endpoints 2020-09-23 14:14:31 +02:00
Jan Oberhauser 1401cebdc3 👕 Fix lint issue 2020-09-23 09:28:02 +02:00
Jan Oberhauser 690e76e187 Add hook which gets called once n8n is ready 2020-09-17 21:26:34 +02:00
Ahsan Virani 4056b6861c
Ignore credentials endpoint in Auth (#966) 2020-09-17 11:24:34 +02:00
Jan Oberhauser 3d003fca72 Improve speed of basic-auth with hashed password 2020-09-14 19:58:21 +02:00
Ben Hesseldieck 279af6251b
Adjustions for utilizing an external OAuth Hook (#945)
* 🚧 add oauth redirect env variable, add host to oauth state

* 🎨 format

* 🚧 reset changes

* 🚧 add hook

* 🚧 remove host from inital state
2020-09-11 12:15:06 +02:00
Ahsan Virani 2a6f4ebf86
Add hash support in basic auth (#943) 2020-09-10 17:49:44 +02:00
Jan Oberhauser 013a7b8cf9 Add hooks for oauth-authentication 2020-09-10 10:16:24 +02:00
Jan Oberhauser a9bfb506ff Update buffer code to not get deprecation message 2020-09-01 17:50:51 +02:00
Jan Oberhauser d2f6bd7e42 👕 Fix lint issue 2020-09-01 09:22:41 +02:00
Jan Oberhauser b26baa902f 🐛 Add missing rawBody for "application/x-www-form-urlencoded" 2020-08-28 18:15:34 +02:00
Jan Oberhauser 7259aa4cf6 🐛 Add rawBody to every request that n8n does not error if body is missing 2020-08-27 15:19:10 +02:00
Jan Oberhauser 843569f608 👕 Fix lint issues and indentation 2020-08-27 15:09:31 +02:00
Jan Oberhauser 228d97d65c 🐛 Fix wrong favicon path #841 2020-08-14 23:20:07 +02:00
ricardo baac8edeb0 Merge 'master' into 'Bitly-OAuth2-support' 2020-08-09 19:12:38 -04:00
Matthew Tovbin 4c275513b4
JWT extras (#817)
* JWT extras: check issues, expiration, namespace and tenant

* idents
2020-08-06 17:44:19 +02:00
Shraddha Shaligram a5b6b3d209
Add Medium Node (#788)
* add medium node

* minor fixes

* fix publication post

* fix according to feedback

* additional fixes

* fix license description

*  Small improvements

*  Improvements

Co-authored-by: ricardo <ricardoespinoza105@gmail.com>
2020-08-05 09:29:29 +02:00
Jan Oberhauser b488ae8d3a 👕 Fix lint issue 2020-07-29 14:20:31 +02:00
Ben Hesseldieck 051598d30e
Add max execution time for Workflows (#755)
* 🎉 basic setup and execution stopping

* 🚧 soft timeout for own process executions

* 🚧 add hard timeout for subprocesses

* 🚧 add soft timeout to main thread

* 🔧 set default timeout to 5 mins --> 500s

* 💡 adding documentation to configs

* 🚧 deactivate timeout by default

* 🚧 add logic of max execution timeout

*  adding timeout to settings in frontend and server

* 🎨 improve naming

* 💡 fix change in config docs

* ✔️ fixing compilation issue

* 🎨 add format for new config variables

* 👌 type cast before checking equality

*  Improve error message if NodeType is not known

* 🐳 Tag also rpi latest image

* 🐛 Fix Postgres issue with Node.js 14 #776

* 🚧 add toggle to activate workflow timeout

* 💄 improving UX of setting a timeout and its duration

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2020-07-29 14:12:54 +02:00
Jan Oberhauser 9c266e7aea Small improvements to OPTIONS request for webhooks 2020-07-24 16:45:07 +02:00
Rupenieks 82d94873fc
OPTIONS request support for Production/Test Webhooks (#787)
* 🐛 Fix naming of events in AffinityTrigger Node

* 🚧 OPTIONS allow header response for production webhooks

*  Implemented Allow header for test webhook OPTIONS response

Co-authored-by: Jan Oberhauser <jan.oberhauser@gmail.com>
2020-07-24 16:24:18 +02:00
Jan Oberhauser de8e6f2811 🐛 Fix bug with saving executions of unsaved workflows 2020-07-24 15:16:55 +02:00
Jan Oberhauser 25cc745894 🐛 Fix editor-ui build 2020-07-14 23:36:05 +02:00
Jan Oberhauser df3077b5d2 👕 Fix lint issue 2020-07-14 13:59:37 +02:00
Jan Oberhauser d17161cf40 🔀 Merge branch 'static-stateless-webhooks' 2020-07-14 12:34:34 +02:00
Jan Oberhauser 941ee06b14 Make n8n work in subfolder & Fix events in AffinityTrigger 2020-07-12 12:17:01 +02:00
ricardo c6e060904e Fix issue with OAuth2 2020-07-08 15:15:33 -04:00
Ricardo Espinoza 8aff042e04
* Endpoint to preset credentials
*  Endpoint to preset credentials

*  Improvements

* 🐛 Small fix

* 🐛 Small fix
2020-07-07 19:03:53 +02:00
Jan Oberhauser 93afb0940b Use rest endpoint configuration 2020-06-23 16:12:53 +02:00
ricardo 494b1de93f Merge branch 'master' into static-stateless-webhooks 2020-06-22 16:16:50 -04:00
Jan Oberhauser 5ed86670a8 Make it use of full webhook path more generic 2020-06-10 15:39:15 +02:00
Jan Oberhauser 1451f94814 🔀 Merge branch 'external-hooks' 2020-06-10 13:02:45 +02:00
Jan Oberhauser 57b3a2e05e Cleanup of external hooks 2020-06-10 13:00:28 +02:00
Jan Oberhauser c7a901083b 🔀 Merge branch 'master' of github.com:n8n-io/n8n 2020-06-04 17:03:11 +02:00
Jan Oberhauser f9b3cced5c 🔀 Merge branch 'master' into oauth-support 2020-06-04 09:44:21 +02:00
Patrick Wellever 49ea7e2739
Make server listen address configurable (#618) 2020-06-04 09:36:10 +02:00
Jan Oberhauser 35c149c7b1 Fix small issue 2020-06-03 19:58:55 +02:00
Tei1988 e19cd9c118
Add support for scoped npm packages (#612) 2020-06-03 19:40:39 +02:00
Jan Oberhauser e3a6064196 Small changes to Twitter-Node 2020-06-03 15:06:13 +02:00
ricardo af3d799e5c Oauth1 support and Twitter node 2020-06-01 20:42:44 -04:00
ricardo 91c40367e1 Done 2020-05-27 19:32:56 -04:00
Jan Oberhauser cfe6e72440 Do not save credential default values to DB #PROD-52 2020-05-14 14:27:19 +02:00
Jan Oberhauser 74fac1e56c Do not overwrite all oauth data on reconnect #PROD-24 2020-05-13 01:07:34 +02:00
Jan Oberhauser ea47e8b1bc Fix issue that OAuth data got overwritten with every save #PROD-22 2020-05-13 00:40:05 +02:00
Jan Oberhauser 147c50485c 🔀 Merge branch 'master' into oauth-support 2020-05-12 01:56:27 +02:00
Jan Oberhauser 6e1254fd54 Add additional external workflow hooks 2020-05-06 00:59:58 +02:00
zou wendi e4cc3a4bc9 features: support jira self-hosted server 2020-05-05 12:07:19 +08:00
Jan Oberhauser 0387671cae Add additional external hooks and provide additional data 2020-05-05 01:23:54 +02:00
Jan Oberhauser a380a9a394 Add first basic code for external hooks 2020-05-04 08:56:01 +02:00
Jan Oberhauser 42f6f4af2c Display an error when unsaved workflow gets executed with webhook 2020-05-03 17:55:14 +02:00
ricardo d57d457148 SurveyMonkey trigger 2020-04-26 12:51:27 -05:00
Jan Oberhauser b1172bdb48 🔀 Merge branch 'master' into oauth-support 2020-04-10 09:48:24 +02:00
Jan Oberhauser be9474e84a Fix build issue with new interfaces 2020-04-09 20:23:33 +02:00
Jan Oberhauser f9dd92db97 🔀 Merge branch 'master' into oauth-support 2020-04-08 10:10:44 +02:00
Jan Oberhauser 7a27979ddd Fix build issue with new interfaces 2020-04-08 10:08:42 +02:00
Jan Oberhauser 9dd9e0d8ba 🔀 Merge branch 'master' into oauth-support 2020-04-04 17:34:10 +02:00
Jan Oberhauser 7c5f437e92 Make sure that it looks for SSL certs only if defined 2020-03-30 13:29:42 +02:00
Jan Oberhauser f00b7347c8 Minor improvements to SSL support 2020-03-29 12:46:55 +02:00
KH Wong 2870818211 Add HTTPS support by giving an SSL Cert and Key 2020-03-28 01:19:30 +08:00
Jan Oberhauser e9c6c64290 🐛 Fix bug that not all webhooks got deleted when active & testing #387 2020-03-21 00:32:05 +01:00
Jan Oberhauser 3bf0a9ab10 🐛 Fix retry issue #365 2020-03-17 09:19:56 +01:00
Jan Oberhauser ff7f0a5de5 Fix some issues with Slack-Node 2020-03-15 15:51:49 +01:00
Jan Oberhauser 150aa7daee 🐛 Fix issue that did not use actual node parameters loading options 2020-03-15 13:00:57 +01:00
Ricardo Espinoza fe36c9c76a setup 2020-03-05 18:26:44 -05:00
Jan Oberhauser cdfe64d939 👕 Fix lint issue 2020-03-01 09:52:10 +01:00
Jan Oberhauser 82e6a10d98 🔒 Fix rest API security issue 2020-03-01 09:45:29 +01:00
Jan Oberhauser 70286b469e Make workflow metadata available in expresions and
node-functions
2020-02-15 17:07:01 -08:00
Jan Oberhauser 6a08fc9da3 Small improvements to ZohoCRM-Node and OAuth fix 2020-02-14 18:48:58 -08:00
Ricardo Espinoza 8e87723858 Zoho node 2020-02-12 10:04:43 -05:00
Jan Oberhauser 3fe236b9e6 🐛 Fix SNS-Trigger-Node 2020-02-09 18:27:06 -08:00
Jan Oberhauser c1574a73ac Improved Github Oauth support and generic Oauth functionality 2020-02-09 15:39:14 -08:00
Ricardo Espinoza 96741460e3 Github OAuth support 2020-02-09 10:11:15 -05:00
Jan Oberhauser 928bf4dc68 Fix OAuth-Token refresh 2020-02-08 21:30:36 -08:00
Jan Oberhauser 5594543ec8 Fix OAuth UI issues and allow to set additional query parameters 2020-02-08 16:14:28 -08:00
Jan Oberhauser eb285ef711 Make it possible to set credentials to fixed values 2020-01-25 23:48:38 -08:00
Jan Oberhauser aa1899f81d Prepare webhooks for multitenancy 2020-01-22 15:06:43 -08:00
Jan Oberhauser 8228b8505f Abstract OAuth signing and make credentials extendable 2020-01-13 20:46:58 -06:00
Jan Oberhauser 70e972ff7d Revert "🔀 Merge branch 'oauth-support' of https://github.com/tildabio/n8n"
This reverts commit 0c5972bb98, reversing
changes made to 3de03b5097.
2020-01-10 14:26:06 -06:00
Jan Oberhauser 9a2188f22f :zip: Do not allow credentials without name 2020-01-09 21:23:47 -06:00
Jan Oberhauser 740cb8a6fc Some small changes to basic OAuth support 2020-01-07 18:29:11 -06:00
Ram Yalamanchili d2ea3ce877 Add OAuth2 Authorization and Callback rest endpoints
URL generation for OAuth2 authorization and the subsequent login
callback are handled at the backend API. While this can be done
client side, the credentials are better managed entirely on the
server side.
2020-01-01 22:55:16 -08:00