Skip to content
This repository has been archived by the owner on Mar 8, 2022. It is now read-only.

Terraform Provider Development Program - Initial Review #70

Closed
4 tasks done
cgriggs01 opened this issue Jan 8, 2019 · 16 comments
Closed
4 tasks done

Terraform Provider Development Program - Initial Review #70

cgriggs01 opened this issue Jan 8, 2019 · 16 comments

Comments

@cgriggs01
Copy link
Contributor

cgriggs01 commented Jan 8, 2019

Hey Team, 👋 My name is Chris, I'm a member of the Partner team @ HashiCorp.

I’ve taken a look at the provider here and would like to say great work so far! I do have feedback outlined below that I’d like to see addressed before we move on to the next steps. I’m opening this issues as a sort of checklist for tracking items and discussion. The review was done on the master branch at git commit 10ab4b3

  • All the acceptance tests are passing except for the CustomDomain test. It just appears to be failing due to that fact that this is a free tier test account. Is this the case or should all tests be passing?

  • Each Terraform provider must have its own terraform.io website documentation that should reside under a website/ directory. There should be a page for each resource and data source as well as an index page for the provider. Along with with must be a ruby layout file to represent the side bar directory.

  • There are a number of files that must be added in order for the provider to function in the Terraform native ecosystem.

    • The GNUmakefile is pretty standard across all Terraform providers, feel free to copy the NULL provider makefile, you will just have to update the variable on line 4 to PKG_NAME=auth0 and update to use ‘dep’
    • There are four bash scripts in a scripts/ that are used in different processes of testing and release, these can all be copied from the NULL provider
    • Each Terraform provider must have a CHANGELOG that is updated during reach release. Since the changeling is updated by a bot during the release it must be in a certain format. With the AWS provider changelog as an example, the version of the nexted release should be tagged as “(Unreleased)” and will then be updated with a date by the release-bot.
    • All providers in the terraform-providers/ GitHub org have a TravisCI check run on each PR that is opened. Can you please update your .travis.yaml file to make the standard configuration
  • You currently have a MIT License on the provider, would you be able to change that to a MPL2 which is the standard across all Terraform providers.

Let me know if you have any questions.
-Chris

@alexkappa
Copy link
Owner

Hi Chris,

Thanks for your review!

I have some answers to your questions and will create PRs to address the points you mention.

All the acceptance tests are passing except for the CustomDomain test

This depends on the credentials you used to run the tests. In our CI environment, I'm using our company's account which is paid and allows us to run the Custom Domain tests as well.

The GNUmakefile

We currently use a Makefile which is reccommended by GNU unless its intended specifically for GNU make. is it important this be a GNUmakefile?

There are four bash scripts in a scripts

Will make a PR to add these scripts.

Each Terraform provider must have a CHANGELOG

I think it might be difficult to maintain this format easily with our build bot (goreleaser). I might follow the approach done by the AWS provider to manually track the changes.

All providers in the terraform-providers/ GitHub org have a TravisCI check

Is it important that the CI is done by TravisCI? We are more experienced using Wercker but if it's needed I can look into porting it to TravisCI.

You currently have a MIT License

A PR is already in to switch to MPL2.0

Cheers,
Alex

@cgriggs01
Copy link
Contributor Author

Hey Alex,

Thanks for the responses and questions.

  • As for the CustomDomain test, do you have any idea they this test continues to fail when I run them from my local machine?

  • We have standardized on GNUmakefile because there have been some issues running Makefile has had issue running on Windows machines.

The Changelog is required for the release from our side. Once the provider completes the review and testing certification we'll release the provider under the terraform-providers/ GitHub organization where our bots will help in the build and release.

Best,
Chris

@alexkappa
Copy link
Owner

alexkappa commented Jan 15, 2019

Hi Chris,

About the CustomDomain, it really depends on your Auth0 account. If the credentials you used to run the test are of a free account, the Auth0 API will respond with 403 error code as you are not allowed access to that resource:

This feature is not available for free plans. To configure a custom domain you have to upgrade your account to any paid plan

To test it locally, you must have credentials from a paid account. I have reached out to Auth0 if they could sponsor this project by means of a paid account, but the most I managed to get is a free upgrade to our companies staging account.

We have standardized on GNUmakefile

Okay, the change shouldn't be too disruptive so I'll rename the file.

The Changelog is required for the release

Of course, I understand. What I mentioned is that I will opt for a manual strategy of updating the changelog in order to have more control over the formatting. Our release tool won't be able to cope with the formatting constraints.

Do you have any thoughts on my question regarding TravisCI?

Best,
Alex

@alexkappa
Copy link
Owner

Hi @cgriggs01, I believe most of the items in your feedback have been addressed. Would you mind having another look and let me know how we can continue?

With regards to the documentation, the work is under way and the skeleton is there but we haven't documented all the resources yet. We also had some trouble with the website, please see this issue.

Thanks!
Alex

@github-actions
Copy link

This issue is stale because it has been open 30 days with no activity.
Stale issues will be closed after 5 days if no action is taken. If you
think this issue should not be closed, remove the stale label.

@alexkappa
Copy link
Owner

@cgriggs01 would be nice to have another look at this. The tests now all pass since Auth0 has granted me a free open source account in which we can test custom domains properly.

@apricote
Copy link
Contributor

apricote commented Feb 6, 2020

There is now a copied repository at terraform-providers/terraform-provider-auth0. Its also included in the official documentation.

@alexkappa
Copy link
Owner

Hi @apricote. Was it not possible to fork, or transfer the repository in order to preserve issues or pull requests that are open?

Also, since the release process is handled by hashicorp staff, I removed the automation I had in place to make releases. I was told I would be invited to a slack channel where I could coordinate with hashicorp on releasing. Might you be able to help me out with that?

Cheers,
Alex

@apricote
Copy link
Contributor

Hi @alexkappa,

I am not affiliated with Hashicorp in any way. I just found the new repository and thought that it is relevant to this ticket.

You will have to ask Chris (@cgriggs01) about the slack channel and any processes.

Best,
Julian

@alexkappa
Copy link
Owner

alexkappa commented Feb 19, 2020 via email

@bishtawi
Copy link
Contributor

bishtawi commented Mar 4, 2020

@alexkappa Did you ever get in touch with the Hashicorp team about that cloned repo? Should we be switching over? I noticed this repo is at version v0.5.2 but the copied repo is at v0.6.0 but that copied repo doesnt have a changelog for v0.6.0, doesnt have a v0.5.2 release, and its v0.5.1 changelog doesnt match this repo's v0.5.1 changelog.

@alexkappa
Copy link
Owner

alexkappa commented Mar 4, 2020 via email

@scottx611x
Copy link
Contributor

@alexkappa Would targeting one of the two repos in question make your life easier moving forward and/or in the interim?

@alexkappa
Copy link
Owner

Yes, the current repo has most of the history so its best when triaging issues. So if you can, please prefer to do so here.

@xens
Copy link

xens commented Oct 7, 2020

Hi @alexkappa I'm wondering what's the status on that one, looks like that the hashicorp repo is now archived https://github.com/terraform-providers/terraform-provider-auth0 and lot sof people will probably be stuck on 0.14 as it's the latest version published there. Anything we can do to help on that topic ? (doc ?)

@sergiught
Copy link
Collaborator

Hello everyone, it seems that this issue has been already solved and as such I'll be closing it down over here. In case there are new updates please feel free to reopen it.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

7 participants