Skip to content

Conversation

ebardsley
Copy link

I've been using this for a while, and figured it was probably worth an upstream commit. Let me know if you'd like it done differently or are not interested in this.

This supports user_team_url in oauth providers, similar to how github supports it.

This was build to work for Discord and their https://discordapp.com/api/users/@me/guilds
endpoint, but should work for anything that returns a list of {"id": "someid"} maps.

For example, I've been using this with a while with:

oauth:
  provider: oidc
  auth_url: https://discordapp.com/api/oauth2/authorize?prompt=none
  token_url: https://discordapp.com/api/oauth2/token
  user_info_url: https://discordapp.com/api/users/@me
  user_team_url: https://discordapp.com/api/users/@me/guilds
  scopes:
  - identify
  - email
  - guilds

and VOUCH_TEAMWHITELIST=<numeric id of my guild> and it works quite nicely.

(The go upgrade was necessary since some dependencies no longer work under 1.18.)

Note that this no longer builds under 1.18, with the following error:

```
... 23.69 # go.uber.org/multierr
... 23.69 /go/pkg/mod/go.uber.org/[email protected]/error.go:209:20: undefined: atomic.Bool
... 23.69 note: module requires Go 1.19
```
This was build to work for Discord and their https://discordapp.com/api/users/@me/guilds
endpoint, but should work for anything that returns a list of `{"id": "someid"}` maps.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants