ThalesGroup / terraform-provider-ciphertrust

The CipherTrust Terraform Provider allows for the incorporation of CipherTrust Cloud Key Manager functionality into a CI/CD pipeline.
Apache License 2.0
6 stars 4 forks source link

plugin crashes on creating gcp connection #17

Closed TomSp closed 3 days ago

TomSp commented 4 days ago

for

  # ciphertrust_gcp_connection.connection will be created
  + resource "ciphertrust_gcp_connection" "connection" {
      + cloud_name = "gcp"
      + id         = (known after apply)
      + key_file   = ".thales_sa.json"
      + name       = "gcp-connection-34fc52d466077c6a"
    }

Stack trace from the terraform-provider-ciphertrust_v0.10.6-beta plugin:

panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x1c0 pc=0x10797e5]

goroutine 53 [running]: thales.com/terraform/terraform-provider-ciphertrust/provider.testGcpConnectionParams({0x16f5240, 0xc0009e1420}, 0x1f961a0, {0xc00017f500, 0x935}, 0x16f5240?) thales.com/terraform/terraform-provider-ciphertrust/provider/resource_gcp_connection.go:229 +0x85 thales.com/terraform/terraform-provider-ciphertrust/provider.resourceGcpConnectionCreateContext({0x16f5240, 0xc0009e1420}, 0xc000a1a600, {0x136db20, 0x1f961a0}) thales.com/terraform/terraform-provider-ciphertrust/provider/resource_gcp_connection.go:80 +0x1aa

doing the same via webUI -> works

SarahThompson commented 4 days ago

Hi Tom, Thank-you for bringing this to our attention. Unfortunately I'm not able to reproduce with a either a filename of that name, a filename that doesn't exist with that name or invalid data in the file. Seems to work fine with valid data in the file. Can you share what version of the provider you are using and what is the version for CipherTrust Manager so I can compare apples with apples. Thanks Sarah.

TomSp commented 4 days ago

the environment, I am using

Terraform v1.9.8
on linux_amd64
+ provider registry.terraform.io/hashicorp/google v6.11.2
+ provider registry.terraform.io/hashicorp/random v3.6.3
+ provider registry.terraform.io/thalesgroup/ciphertrust v0.10.6-beta

key_file = ".thales_sa.json" is the service-account-json, which works inside the WebUI

image

SarahThompson commented 4 days ago

Hi Tom, Thanks for the info. Same versions of terraform and the provider I was testing with. You didn't mention the version. Can you click on the info button on the top bar of the UI and let us know what it says. That being said the only thing I can see which could result in a nil pointer dereference on that line of code is the client used for calling the API functions. Are you able to create other resources? Regards Sarah

TomSp commented 3 days ago

Hi,

https://github.com/ThalesGroup/terraform-provider-ciphertrust/issues/16 crashes as well

the ui is the WebUI https://ciphertrust.dpondemand.io/?tenant=onpier-gmbh-ciphertrustmanager I have not seen any version number there

Has it something to do with the authentication? We using

cat ~/.ciphertrust/config
address = https://ciphertrust.dpondemand.io/?tenant=onpier-gmbh-ciphertrustmanager
username = {email}
password = {password}
domain = 

Best Tom

SarahThompson commented 3 days ago

Hi Tom, Sorry, I thought you were working with an instance of the CipherTrust Manager, Unfortunately somebody else will have to help you as I work with Cloud Key Manager resources. Regards Sarah

martingegenleitner commented 3 days ago

Hi @TomSp, I think this issue should also be linked to your broken provider configuration from issue #15 . Please update this issue, if a fixed provider config also fixes this issue.

Please be aware that our terraform provider is still in Beta and therefore seems to handle non-perfect configurations quite roughly (as we can see with the whole exception stack trace). Best regards, Martin

TomSp commented 3 days ago

fix due to https://github.com/ThalesGroup/terraform-provider-ciphertrust/issues/15