Auth0 Home Blog Docs

Auth0 Terraform Provider

sdk
auth0-configuration
#1

Hi Auth0 community!

I’d like to show you what we’ve been working on at Yieldr to automate the configuration of Auth0 using Terraform, keeping true to discipline of treating infrastructure as code. To support this, we’ve built an Auth0 Management SDK for Go as well.

You can find the provider here:

The tool is not 100% complete yet, but you can see which resources are supported in the README. It comes with plenty of tests!

We’d love your feedback and/or contributions!

Best,
Alex

10 Likes
Client created via management api is broken until dashboard interaction
Golang Auth0 Management SDK
June Community News
August Community News
#2

Doing things like this is really interesting. I’ve not fully taken a look at the entire repo, but I will say that this is something many people ask about. It would be awesome for you to follow up with a blog post showcasing what you’ve done.

1 Like
#3

This is awesome!

I was beginning to build my own at https://github.com/ohana-pediatrics/terraform-provider-auth0, but you’ve gone past what I have.

The one thing I’d love to see is if you could include binaries in your releases, rather than relying on users to build it themselves; Go is kind of a pain to work with if you’re not using it, so it’s something of a learning curve for folks who just want a handy Auth0 provider.

You’re welcome to take my https://github.com/ohana-pediatrics/terraform-provider-auth0/blob/develop/.goreleaser.yml file and tweak as appropriate.

1 Like
#4

Hi Dan,

Goreleaser does look pretty valuable and straightforward to use. There’s a PR in at the moment doing this in wercker but perhaps we can motivate goreleaser as a better approach?

Much appreciated and thanks for the help so far!

Best,
Alex

1 Like
#5

Alex, this looks very nice, good job!

We use terraform a lot in Auth0 and I’ve been always tempted to write a provider for Auth0 itself but my skills in go are weak :smile:

Thank you for sharing this

4 Likes
#6

Thanks Jose, would love to hear your feedback!

#7

Would like to draw more attention to this project as infrastructure/configuration as code adds a great deal of value in maintainability of an Auth0 implementation. I understand Auth0 created the deploy CLI (https://github.com/auth0/auth0-deploy-cli) but it’s lacking some important features that Terraform has:

  • Hiding sensitive values (e.g. client_secret and connection specific settings).
  • Pulling sensitive values from a different source (like AWS Secret Manager, k8s Secrets, or Azure KeyVault).
  • Dry run before pushing a change to see impact on editing/deleting/creating resources.
  • Environment switching. For example only deploying certain clients for production or changing the values depending on environment.

Would love to see official support for this provider by Auth0 and some dedicated resources placed on it.

Thanks Alex for the contribution

3 Likes
#9

Hey there @omar.dfin!

Thanks for adding +1 to that. I’ll make sure to advocate for such tool internally! Will let you know if I have any updates on this one!

1 Like
#10

My team and I would love to see an official provider from Auth0 too!

1 Like
#11

Thanks @james.newell! Will relay that feedback too!

#12

+1
likewise, the team here would jump onboard asap

#13

+1 we would love to have this too!

#14

+1 please Auth0

(this “post must be 20…” is annoying)

#15

+1 I’d love automate Auth0 with terraform

#16

Woooooow. Super appreciate all your contributions to this. Will definitely push it more and advocate for it! Thank you everyone!

2 Likes
#18

Hey everyone!

Status update

We’re evaluating if we have such bandwidth and capacity for now to develop an integration / article / etc. around that sometimes soon. Will let you know once I have more news to share.

We’ve also got a question will someone from the group be potentially interesting in helping us put it together? Thanks everyone for contribution!

1 Like
#19

Hi Konrad, I’d be happy to help. Feel free to reach to me anytime.

I’ve reached out to Terraform in order to get the provider merged with the official terraform providers. This would give the project more visibility and drive usage.

I’ve received some initial feedback (see: https://github.com/yieldr/terraform-provider-auth0/issues/70). I could use some help with documentation which is the bulk of the work needed to get the provider approved.

Cheers,
Alex

#20

Thanks a lot @alex.kalyvitis!

Will let you know once I have any update on it internally!

#21

To make things a little more transparent with regards to the terraform developer program (having the auth0 provider part of terraform.io documentation) I’ve made some tickets based on the review and feedback from the terraform partner team. See issue label provider-development-program.

Any help on this would be much appreciated

#22

Hey @alex.kalyvitis!

I just reached out to you via DM on putting the content on Terraform together. Thanks!