Commit graph

139 commits

Author SHA1 Message Date
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