I’m writing a custom provider and I’m encountering an issue where I put the terraform provider in what should have been the correct location but it is not being detected when I run my acceptance testing.
=== RUN TestAccLatestVersion 2021/01/25 19:53:28 [DEBUG] Test: Executing step 0 2021/01/25 19:53:28 [TRACE] ModuleInstaller: installing child modules for /var/folders/md/_yh_32m51xqbn88pq0n1dllm000s60/T/tf-test303365878 into /var/folders/md/_yh_32m51xqbn88pq0n1dllm000s60/T/tf-test303365878/.modules 2021/01/25 19:53:28 [TRACE] modsdir: writing modules manifest to /var/folders/md/_yh_32m51xqbn88pq0n1dllm000s60/T/tf-test303365878/.modules/modules.json 2021/01/25 19:53:28 [TRACE] terraform.NewContext: starting 2021/01/25 19:53:28 [TRACE] terraform.NewContext: resolving provider version selections 2021/01/25 19:53:28 [WARN] Skipping destroy test since there is no state. --- FAIL: TestAccLatestVersion (0.00s) testing.go:684: Step 0 error: Error initializing context: 2 problems: - Could not satisfy plugin requirements: Plugin reinitialization required. Please run "terraform init". Plugins are external binaries that Terraform uses to access and manipulate resources. The configuration provided requires plugins which can't be located, don't satisfy the version constraints, or are otherwise incompatible. Terraform automatically discovers provider requirements from your configuration, including providers used in child modules. To see the requirements and constraints from each module, run "terraform providers". - provider "crt" is not available
The location is:
molee-mn1:terraform-provider-crt_trunk molee$ ls -la ~/.terraform.d/plugins/darwin_amd64/total 58776 drwxr-xr-x 3 molee staff 96 Jan 25 17:41 . drwxr-xr-x 4 molee staff 128 Jan 25 19:52 .. -rwxr-xr-x 1 molee staff 30090612 Jan 25 17:41 terraform-provider-crt_v0.0.1
using terraform directly on a terraform file I created (for the data source)
molee-mn1:basic molee$ terraform init Initializing the backend... Initializing provider plugins... Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. molee-mn1:basic molee$ terraform plan Refreshing Terraform state in-memory prior to plan... The refreshed state will be used to calculate this plan, but will not be persisted to local or remote state storage. data.crt_latest_product_version.test: Refreshing state... ------------------------------------------------------------------------ No changes. Infrastructure is up-to-date. This means that Terraform did not detect any differences between your configuration and real physical resources that exist. As a result, no actions need to be performed. molee-mn1:basic molee$
I’m curious what’s the expected location of my binary for acceptance testing exactly.