Giter Club home page Giter Club logo

Comments (15)

ismith avatar ismith commented on June 18, 2024

Hi! Is there work actively in progress on this? Weighing if we should charge forward manually, or hold off for a tool.

from terraform-provider-googleworkspace.

megan07 avatar megan07 commented on June 18, 2024

Hi @ismith! I can provide an update here. It is actively being worked on and is the highest priority for this provider at the moment. I'm finding it difficult to create a tool that can do this for us without knowing a user's exact configuration. For example, to parse a configuration file and all the associated interpolations, without knowing what was interpolated etc. I am continuing to look into different approaches, but have no promised deadline of when it will be or what it will look like.

Meanwhile, a tool like this may be helpful if you were to attempt it on your own while we continue to solve for this: https://github.com/minamijoyo/hcledit

from terraform-provider-googleworkspace.

megan07 avatar megan07 commented on June 18, 2024

A quick bump of #204 for those interested in helping us test this tool.

Thanks in advance!

from terraform-provider-googleworkspace.

eitah avatar eitah commented on June 18, 2024

By knowing a user's exact configuration do you mean you want representative samples of our terraform usage of any of the resources that would use the new provider, but especially those mentioned in https://github.com/hashicorp/terraform-provider-googleworkspace/pull/99/files Just trying to clarify what the call to action is.

from terraform-provider-googleworkspace.

megan07 avatar megan07 commented on June 18, 2024

Hi @eitah ! Thanks for asking - yea, any Gsuite Terraform configurations that you have. The basic configurations that we've worked with only really interpolate values, and that's about the extent of Terraform complexity that we've used there, so it'd be great if you had some configurations that used dynamic blocks, splat expressions, etc just to make sure that these things won't mess with the tool we're creating.

As for the resources, I'm not sure I have a preference to which resources are in the configuration, the more variety, the better, again, just to make sure the tool is picking everything up. Does that help?

from terraform-provider-googleworkspace.

megan07 avatar megan07 commented on June 18, 2024

Just wanted to add a gentle reminder here that I'll leave #204 open for another 15 days, and at the end of that time we'll use the configurations provided to verify our migration tool. Thanks!

from terraform-provider-googleworkspace.

joe-a-t avatar joe-a-t commented on June 18, 2024

I'm having a bit of trouble generalizing/anonymizing our configuration enough to share in a reasonable way. Would it be possible for you to share the migration tool so that we could test running it on our end with a backup of our state file and let you know what happened/if there are any issues? That would probably be a lot easier for everyone if we only have to reproduce snippets where we know there is an issue.

from terraform-provider-googleworkspace.

joe-a-t avatar joe-a-t commented on June 18, 2024

@megan07 any update on this? I'm happy to dry run any draft of the migration tool on my end if that would be helpful.

from terraform-provider-googleworkspace.

joe-a-t avatar joe-a-t commented on June 18, 2024

@megan07 any update on the status of this tool? I'm happy to dry run any draft of the migration tool on my end if that would be helpful.

from terraform-provider-googleworkspace.

tejavar avatar tejavar commented on June 18, 2024

Hi @joe-a-t thanks for getting back regarding the credentials for the migration tool. For Q1, We did not prioritize tool and hence won't be working on this. But please do feel free to comment or add your use-cases on high-level so that it will help us re-prioritize this.

from terraform-provider-googleworkspace.

joe-a-t avatar joe-a-t commented on June 18, 2024

Hey @tejavar. We are entirely blocked on using this provider until this tool comes out since the migration process would be unbelievable painful for us without it. If we have to keep using the old deprecated gsuite provider because the migration tool doesn't exist, that's just what we will have to do.

from terraform-provider-googleworkspace.

jazzlyn avatar jazzlyn commented on June 18, 2024

Hi, @joe-a-t in the meantime hashicorp provided an update guide in the provider documentation, see https://registry.terraform.io/providers/hashicorp/googleworkspace/latest/docs/guides/upgrade_guide. It covers the changes that have to be done when switching providers.

@megan07 maybe it would be valuable to add to the guide that the resource type for group_member has to be defined (default: USER) if the member that has to be added is a group (group in group) which makes it required then. this was not necessary with gsuite.

resource "googleworkspace_group_member" "member" {
  type     = "GROUP"
}

from terraform-provider-googleworkspace.

joe-a-t avatar joe-a-t commented on June 18, 2024

Unfortunately that upgrade guide doesn't help at all with (or even document) the required adjustments to the Terraform state file, which is the actual issue for us given the scale of our usage.

from terraform-provider-googleworkspace.

jazzlyn avatar jazzlyn commented on June 18, 2024

@joe-a-t
Regarding state file. Since a migration with terraform state replace-provider deviavir/gsuite hashicorp/googleworkspace did not work because of resource type mismatches, I did a fresh import. See my steps below.

Prepare import:

  • create state backup file
  • create sh file
  • run terraform state list and copy/paste output to sh file (I usually create a backup of the state list as well)
  • add terraform import to each line and adapt to match the import syntax (check resources documentation). it is possible to use email instead of ids.
terraform import googleworkspace_group_settings.test-settings [email protected]
terraform import googleworkspace_group_settings.example-settings [email protected]
[...]
  • make sh file executable

Update configuration:

  • add provider changes to configuration
  • run terraform init

Fresh Import:

  • run sh script: all resources should be imported
  • run terraform plan
  • do adaptions to configuration if necessary

Maybe someone else has another approach :-)

from terraform-provider-googleworkspace.

joe-a-t avatar joe-a-t commented on June 18, 2024

Yeah that's unfortunately not scalable for us, we have literally thousands of resources in hundreds of state files that use this provider. Really wish we could get access to the tool @megan07 was making and looking for test configurations for.

from terraform-provider-googleworkspace.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.