windmill-labs / windmill

Open-source developer platform to power your entire infra and turn scripts into webhooks, workflows and UIs. Fastest workflow engine (13x vs Airflow). Open-source alternative to Retool and Temporal.
https://windmill.dev
Other
11.11k stars 547 forks source link

bug: Bad request: slack client not setup #1262

Closed ateliershen closed 1 year ago

ateliershen commented 1 year ago

Describe the bug

Hi, I was following the tutorial here (https://docs.windmill.dev/blog/connect-slack-with-windmill) and tried to connect Windmill to my Slack channel.

But as long as I clicked on "Connect to Slack",

CleanShot 2023-03-06 at 17 24 45@2x

It throws the error "Bad request: slack client not setup".

CleanShot 2023-03-06 at 17 25 17@2x

Is there anything I should do before clicking on the button? Thank you.

To reproduce

  1. Go to "/workspace_settings"
  2. Click on "Connect to Slack"
  3. See error: Bad request: slack client not setup

Expected behavior

Should be redirected to the Slack OAuth page.

Screenshots

CleanShot 2023-03-06 at 17 25 17@2x

Browser information

No response

Application version

ghcr.io/windmill-labs/windmill:1.71

Additional Context

No response

rubenfiszel commented 1 year ago

Hi @ateliershen,

Indeed you need to setup a slack app: https://api.slack.com/apps?new_app=1 and then add the client id and client secret following the same format as for the google instructions on: https://docs.windmill.dev/docs/advanced/setup_oauth/

rubenfiszel commented 1 year ago

I wrote more information here: https://docs.windmill.dev/docs/advanced/setup_oauth/

ateliershen commented 1 year ago

Hi @rubenfiszel ,

Thanks for the prompt response!

My app was set up with https://easypanel.io/ so I don't have direct access to the .yaml file or the root folder. It's from the app template.

I cannot defend my lack of Docker knowledge here, but please consider making OAuth configurable via "/workspace_settings" on the web. Sometimes the platform admin might not be the developer who set up the instance.

If this makes sense I can create a feature request for this. Thank you!

rubenfiszel commented 1 year ago

@ateliershen I think easypanel supports docker file directly which mean one could likely build a custom one that takes windmill as FROM and then copy the oauth.json file at the right place. The reason for requiring a file is that the file is then read at start and kept in memory for fast access. Doing it configurable through the db would mean a db read access for a lot of requests. There might be a better way to do this.

Would you be willing to share the steps needed right now to deploy on easypanel ? I'd be keen to add it to the windmill documentaiton.

ateliershen commented 1 year ago

Hi @rubenfiszel ,

Sure, I created a short screencast to demonstrate how to install Windmill on easypanel: https://gofile.io/d/lq6MC4

Steps:

  1. Create a Project
  2. Select Windmill from the app template
  3. Add the domain for this Windmill instance (and set up the DNS)
  4. Wait for it to spin up
  5. Navigate to the domain and log in with default credentials

I hope this helps!

rubenfiszel commented 1 year ago

Thanks. I think this is something that could potentially be handled at the easypanel level, created an issue for it: https://github.com/easypanel-io/templates/issues/254