slackapi / node-tasks-app

Tasks App is a sample Task Management app built on the Slack Platform.
MIT License
99 stars 50 forks source link

[FEATURE] Org-aware app #7

Open colmdoyle opened 3 years ago

colmdoyle commented 3 years ago

Description

As a Developer

I want to Make my app aware of Slack Enterprise Grid

So that I can Deploy it across my whole organisation

Languages

This feature is now implemented in:

Requirements (place an x in each of the [ ])

colmdoyle commented 3 years ago

I'm thinking about skipping regular OAuth and going direct to an Organisation wide install, since I believe the code would be able to support both a Grid install and a single workspace install on a single code path.

We've probably got two options in terms of table structure. A pair of tables - installations and tokens with a relationship, or just a single table that keeps it all to a single row, keyed off enterprise_id.

Any suggestions on the better approach @seratch @stevengill ?

seratch commented 3 years ago

My comments in the past may be helpful for thinking about the database table design.

In a nutshell,

It's fine to have a bit different table design in this app but the above points should be taken in consideration.

colmdoyle commented 3 years ago

Those are great thanks.

I think we should develop this app with the assumption it would be deployed to production, so I'll go with your suggestions.

colmdoyle commented 3 years ago

Of course, if we considered this as an app to be deployed only on a single grid / workspace, then we could upgrade all the various call sites to pass team_id, store the org level token as a environment variable, then forgo any extra tables at all right?