n8n.io - Zappier, IFTTT, Integromat alternative
-
There seems to be lots of questions around licensing in the HN thread - https://news.ycombinator.com/item?id=21191676
I am not even sure if we are 'allowed' to package it for Cloudron
-
Though not made with exactly the same approach there's a popular request for Huginn as well.
-
@girish said in n8n.io - Zappier, IFTTT, Integromat alternative:
I am not even sure if we are 'allowed' to package it for Cloudron
It sounds to me like you probably are allowed to do so:
May I create, distribute, offer as SaaS, and/or “sell” my products using Commons Clause licensed components?
Yes!
Commons Clause only forbids you from “selling” the Commons Clause software itself. You may develop on top of Commons Clause licensed software (adding applications, tools, utilities or plug-ins) and you may embed and redistribute Commons Clause software in a larger product, and you may distribute and even “sell” (which includes offering as a commercial SaaS service) your product. -
@jdaviescoates When this came out, the license was not Common Clause.
But now that we know the license and indeed Cloudron can redistribute it, I'm all for this to be ported here.
-
+1!
I'm looking forward to see this app as cloudron app! -
This is something! +1 from me
-
@hiyukoim said in n8n.io - Zappier, IFTTT, Integromat alternative:
+1!
I'm looking forward to see this app as cloudron app!@imc67 said in n8n.io - Zappier, IFTTT, Integromat alternative:
This is something! +1 from me
Just to be sure, have you both clicked on the little up ^ arrow on the post at the top of this thread?
Because that's how to +1 in a way that counts
-
Just to be sure, have you both clicked on the little up ^ arrow on the post at the top of this thread?
Because that's how to +1 in a way that counts
haha, ofcourse
-
So I have an initial packaging for this done at https://git.cloudron.io/jimcavoli/n8n-app
HOWEVER, I'm honestly not sure I'd be comfortable putting this software into production as-is. It's pretty weak on some security features, but maybe its not the end of the world for people and I'm just super paranoid. There seems to be an undocumented way to do JWT auth, which I'm not going to even try to get into that, since I'm only aware of it from looking at the config file handling typescript code. The only supported authentication right now is basic auth as documented - with a single username/password set by ENV or config file (I went with the latter since it's easier for end-users to edit in
/app/data/.n8n/config
by terminal).Either way, everything basically works, and by launching via supervisord with the working directory set to
/app/data/output
we're able to contain its binary file writing to system (probably a bad thing to do in prod as well, but it works).Custom nodes can be added to
/app/data/custom
, the config file is JSON at/app/data/.n8n/config
, and the package writes cloudron-provided postgresql configuration to that file at launch.Some stuff only works in Chrome. That's just an issue with the app. Something about they way they're handling web sockets means other browsers see "Connection lost" in the top right, which is where the Activation toggle should be. Most other things actually work fine, but that's necessary for executing workflows in-browser manually and activating them.
I packaged this one because it seems to have some popularity in asks, but it definitely deserves some due diligence before heading to production for anyone or the app store. It's also pre-1.0 so not sure how much is changing how fast, and the setup as is was a pretty delicate thing to get done. Maybe my concerns are overplayed, maybe not, but either way, there's something we can start to kick the tires on for this app now.
-
@jimcavoli thanks for looking into this! The upstream projects seems to be quite active, so that is a good sign and probably things will improve then.
I've put it on my task list to take a look and then possiblly port it to the new base image and add some tests.
-
@jdaviescoates
haha,sure, of course I did -
Hey @jimcavoli, good job with n8n, I've cloned your repo and played around a little. For whatever reason the basic auth wasn't working out of the box, so I added
ENV N8N_CONFIG_FILES="/app/data/.n8n/config"
to the Dockerfile. Now auth works, but as soon as you restart the app for the first time, it won't come up anymore with that errormessage:Error: configuration param 'encryptionKey' not declared in the schema
. It only gets back online after removing the encryptionKey entry in/app/data/.n8n/config
and triggering another restart (which then again sets a new/different encryptionKey ).Any idea what's that about, or how did you get auth to work? It just ignores my settings without that env variable. If it's not set, restarts work, but auth does not.
A quick fix was to add another env var
ENV N8N_ENCRYPTION_KEY="123"
to make the encryption key static (still had to delete it before restarting, but it sets the static one afterwards), else all saved credentials were unusable after restart and changed encryptionKey. Oviously that's not a solution, but at least I could test a little.Other than that (and updating to the latest version, base image and some minor tweaks) it seems to be working fine!
edit: not able to get webhooks to work, not sure if it's me or n8n
-
Today IFTTT announced that they will charge you $10 a month (!!!!) for their service. Maybe now it’s really time to put Cloudron in a unique position with this app?!
-
-
@girish https://ifttt.com/plans
Create 3 Applets of your own
Turn on unlimited Applets