Terraform: "Failed to query available provider packages" with locally-installed third-party plugin

Created on 8 Jun 2020  ยท  25Comments  ยท  Source: hashicorp/terraform

Terraform Version

Terraform v0.13.0-beta1

Terraform Configuration Files


main.tf:

# Proxmox Provider
provider "proxmox" {
  pm_tls_insecure = true

  pm_api_url  = var.pve_host
  pm_user     = var.pve_usr
  pm_password = var.pve_pwd
  pm_otp      = ""
}

versions.tf:

terraform {
  required_providers {
    proxmox = {
      source  = "telmate/proxmox"
    }
  }
  required_version = ">= 0.13"
}

Debug Output


Error: Failed to query available provider packages

Could not retrieve the list of available versions for provider
telmate/proxmox: provider registry registry.terraform.io does not have a
provider named registry.terraform.io/telmate/proxmox

Crash Output

Expected Behavior


I run a little bootstrap to install this provider/provisionner that I have fixed for 0.13

DEST_DIR=~/.terraform.d/plugins/registry.terraform.io/telmate/proxmox/linux_amd64/

go get -u github.com/Telmate/terraform-provider-proxmox/cmd/terraform-provider-proxmox
go get -u github.com/Telmate/terraform-provider-proxmox/cmd/terraform-provisioner-proxmox

mkdir -p ${DEST_DIR}
ln -s ~/go/bin/terraform-provider-proxmox    ${DEST_DIR}
ln -s ~/go/bin/terraform-provisioner-proxmox ${DEST_DIR}

Actual Behavior


Provider and provisionner are correctly fetched and builded but terraform doesn't see it
They was correctly seen on terraform 0.12.x

Steps to Reproduce


terraform init

Additional Context


Maybe am I missing something on the new directory structure to correctly put my build of Telmate/proxmox. They don't even propose already builded binaries and they never had tagged a version

References


The provider repo: https://github.com/Telmate/terraform-provider-proxmox

v0.13

Most helpful comment

@iaingblack it's quite alright, it's all confusing and we don't have the full documentation published yet :)


To give some extra information: The provider source needs to be declared in each module because an interesting side effect of the provider source work is that we can now use multiple providers with the same name in configuration. Each module could use a provider named 'dns' with a different source. Internally, terraform uses the source to create a FQN (fully-qualified name) for each provider, so you could have for example three modules, each using one of "mildwonkey/dns" "hashicorp/dns" and "yourname/dns".

You can also use each provider in a single configuration, though I don't think I can explain it well enough in a comment. I'm not our best doc writer by any means, but I do have some examples here

Keep in mind that this will all "just work" for the most common cases: configurations with hashicorp providers (only). Terraform will assume that a provider without a source is a default (hashicorp) provider. But, as the folks in this issue have found, there's more effort involved for users and module developers with more complicated modules and/or locally installed providers.

All 25 comments

Hi @sticky-note,

Could you please run your terraform init command again with the TF_LOG=trace environment variable set and then share the resulting verbose logs via a gist? The provider installer includes a lot of useful debugging information in the logs, which should hopefully allow us to figure out what happened here.

Hi @sticky-note, thank you for opening this issue!

When terraform finds a provider binary locally, it does not query the registry, so that message suggests to me that the provider installer did not find the binary as installed.

It looks like your destination path is missing the required version portion:
$BASEDIR/$SOURCEHOST/$NAMESPACE/$TYPE/$VERSION/$OS_$ARCH/

So you might need something more like:
DEST_DIR=~/.terraform.d/plugins/registry.terraform.io/telmate/proxmox/1.0.0/linux_amd64/

~For anyone else running into similar issues this writeup of the provider installer isn't necessarily up to HashiCorp's documentation standards, but it's something I put together as a reference while working on provider source, and it might be helpful for now until the documentation gets published.~

EDIT: I completely forgot about the upgrade guide which has much better documentation for local providers!

Oh also, in addition to my previous request, note that provisioner plugins are still using the old conventions, so you should not change your previous installation strategy for the terraform-provisioner-proxmox file. That would not cause the error you saw though, so I think that is unrelated to the problem you've encountered here.

Heh, looks like I collided with @mildwonkey here who has spotted what's going on! :grinning:

Ok, I tested with

DEST_DIR=~/.terraform.d/plugins/registry.terraform.io/telmate/proxmox/0.0.1/linux_amd64/

and versions.tf :

terraform {
  required_providers {
    proxmox = {
      source  = "telmate/proxmox"
      version = "0.0.1"
    }
  }
}

Same Error
And I tried with:

DEST_DIR=~/.terraform.d/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64/

and versions.tf:

terraform {
  required_providers {
    proxmox = {
      source  = "www.telmate.com/telmate/proxmox"
      version = "0.0.1"
    }
  }
}

Here is the TRACE log of the second try :

2020/06/09 10:15:21 [INFO] Terraform version: 0.13.0 beta1 
2020/06/09 10:15:21 [INFO] Go runtime version: go1.14.2
2020/06/09 10:15:21 [INFO] CLI args: []string{"/home/sticky-note/.terraform.versions/terraform_0.13.0-beta1", "init"}
2020/06/09 10:15:21 [DEBUG] Attempting to open CLI config file: /home/sticky-note/.terraformrc
2020/06/09 10:15:21 Loading CLI configuration from /home/sticky-note/.terraformrc
2020/06/09 10:15:21 [DEBUG] checking for credentials in "/home/sticky-note/.terraform.d/plugins"
2020/06/09 10:15:21 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/09 10:15:21 [DEBUG] ignoring non-existing provider search directory /home/sticky-note/.local/share/terraform/plugins
2020/06/09 10:15:21 [DEBUG] ignoring non-existing provider search directory /home/sticky-note/.local/share/flatpak/exports/share/terraform/plugins
2020/06/09 10:15:21 [DEBUG] ignoring non-existing provider search directory /var/lib/flatpak/exports/share/terraform/plugins
2020/06/09 10:15:21 [DEBUG] ignoring non-existing provider search directory /usr/local/share/terraform/plugins
2020/06/09 10:15:21 [DEBUG] ignoring non-existing provider search directory /usr/share/terraform/plugins
2020/06/09 10:15:21 [INFO] CLI command args: []string{"init"}

2020/06/09 10:15:21 [TRACE] Meta.Backend: built configuration for "remote" backend with hash value 2176850478
Initializing the backend...
2020/06/09 10:15:21 [TRACE] Preserving existing state lineage "{...}"
2020/06/09 10:15:21 [TRACE] Preserving existing state lineage "{...}"
2020/06/09 10:15:21 [TRACE] Meta.Backend: working directory was previously initialized for "remote" backend
2020/06/09 10:15:21 [TRACE] Meta.Backend: using already-initialized, unchanged "remote" backend configuration
2020/06/09 10:15:21 [DEBUG] Service discovery for app.terraform.io at https://app.terraform.io/.well-known/terraform.json
2020/06/09 10:15:21 [TRACE] HTTP client GET request to https://app.terraform.io/.well-known/terraform.json
2020/06/09 10:15:22 [DEBUG] Retrieve version constraints for service tfe.v2.1 and product terraform
2020/06/09 10:15:22 [TRACE] HTTP client GET request to https://checkpoint-api.hashicorp.com/v1/versions/tfe.v2.1?product=terraform
2020/06/09 10:15:25 [TRACE] Meta.Backend: instantiated backend of type *remote.Remote
2020/06/09 10:15:25 [TRACE] providercache.fillMetaCache: scanning directory .terraform/plugins
2020/06/09 10:15:25 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/terraform-providers/powerdns v1.4.0 for linux_amd64 at .terraform/plugins/registry.terraform.io/terraform-providers/powerdns/1.4.0/linux_amd64
2020/06/09 10:15:25 [TRACE] providercache.fillMetaCache: including .terraform/plugins/registry.terraform.io/terraform-providers/powerdns/1.4.0/linux_amd64 as a candidate package for registry.terraform.io/terraform-providers/powerdns 1.4.0
2020/06/09 10:15:25 [DEBUG] checking for provisioner in "."
2020/06/09 10:15:25 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.versions"
2020/06/09 10:15:25 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.d/plugins"
2020/06/09 10:15:25 [INFO] Failed to read plugin lock file .terraform/plugins/linux_amd64/lock.json: open .terraform/plugins/linux_amd64/lock.json: no such file or directory
2020/06/09 10:15:25 [TRACE] Meta.Backend: backend *remote.Remote supports operations

2020/06/09 10:15:25 [TRACE] providercache.fillMetaCache: scanning directory .terraform/plugins
Initializing provider plugins...
2020/06/09 10:15:25 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/terraform-providers/powerdns v1.4.0 for linux_amd64 at .terraform/plugins/registry.terraform.io/terraform-providers/powerdns/1.4.0/linux_amd64
2020/06/09 10:15:25 [TRACE] providercache.fillMetaCache: including .terraform/plugins/registry.terraform.io/terraform-providers/powerdns/1.4.0/linux_amd64 as a candidate package for registry.terraform.io/terraform-providers/powerdns 1.4.0
2020/06/09 10:15:25 [DEBUG] Service discovery for www.telmate.com at https://www.telmate.com/.well-known/terraform.json
2020/06/09 10:15:25 [TRACE] HTTP client GET request to https://www.telmate.com/.well-known/terraform.json
- Using previously-installed terraform-providers/powerdns v1.4.0
- Finding www.telmate.com/telmate/proxmox versions matching "0.0.1"...
2020/06/09 10:15:27 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform/plugins
Error: Failed to query available provider packages

Could not retrieve the list of available versions for provider
www.telmate.com/telmate/proxmox: host www.telmate.com does not offer a
Terraform provider registry

Powerdns provider was installed locally with:

terraform providers mirror ~/.terraform.d/plugins/

That said. I just saw terraform-bundle. Is this provider correctly bundled and discoverable by terraform binary ?
Do I have to manually bundle this provider/provisionner to pin them properly a version, my two binaries are just builded by go get -u github.com/Telmate/terraform-provider-proxmox/cmd/terraform-provider-proxmox at the moment

When I leave them in ~/.terraform.d/plugins/linux_amd64, I get from the TRACE log:

2020/06/09 10:48:26 [WARN] found legacy provisioner "terraform-provisioner-proxmox_0.0.1"

but the provider is presumably ignored..

@apparentlymart @mildwonkey I tested to terraform-bundle the provider-proxmox binary but I cannot use 0.13.0-beta1 as version in terraform-bundle.hcl and terraform-bundle v0.12.26 doesn't take into account the new directory structure. Any advice ?

Not sure if useful, but i managed to get this working. I had to just pretend I had a hashicorp plugin. Provider is like the below. I'm using the banzaicorp k8s plugin which is not in the registry and installs like your one above. It's not ideal but it does get around it complaining it cannot find it as it seems to trust the local filesystem cache for the hashicorp registry items

terraform {
  required_providers {
    k8s = {
      source  = "hashicorp/k8s"
      version = " 0.7.6"
    }
  }
}

Then this is the file structure in the the default local plugins folder (not the shared OS specific one)

.terraform\plugins\registry.terraform.io\hashicorp\k8s\0.7.6\windows_amd64\terraform-provider-k8s.exe

To get the error behind the 'correct setup', if I create a folder like;

.terraform\plugins\myplugin.folder.com\banzaicloud\k8s\0.7.6\windows_amd64\terraform-provider-k8s.exe

and a provider like

    k8s = {
      source  = "myplugin.folder.com/banzaicloud/k8s"
      version = " 0.7.6"
    }

I get the error below as while it finds the file as a candidate it still tries to scan against the hashicorp registry instead of just searching the filepath for the file and using it as a 'cached location' first that I have setup on it's behalf

2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: scanning directory .terraform\plugins
Initializing provider2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found myplugin.folder.com/banzaicloud/k8s v0.7.6 for windows_amd64 at .terraform\plugins\myplugin.folder.com\banzaicloud\k8s\0.7.6\windows_amd64
 plugins...
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/azuread v0.10.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\azuread\0.10.0\windows_amd64
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/azurerm v2.13.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\azurerm\2.13.0\windows_amd64
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/helm v1.1.1 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\helm\1.1.1\windows_amd64
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/kubernetes v1.9.0 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\kubernetes\1.9.0\windows_amd64
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/null v2.1.2 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\null\2.1.2\windows_amd64
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/random v2.2.1 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\random\2.2.1\windows_amd64
2020/06/09 10:23:42 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/template v2.1.2 for windows_amd64 at .terraform\plugins\registry.terraform.io\hashicorp\template\2.1.2\windows_amd64
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\azurerm\2.13.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/azurerm 2.13.0
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\helm\1.1.1\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/helm 1.1.1
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\kubernetes\1.9.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/kubernetes 1.9.0
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\null\2.1.2\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/null 2.1.2
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\random\2.2.1\windows_amd64 as a candidate package
for registry.terraform.io/hashicorp/random 2.2.1
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\template\2.1.2\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/template 2.1.2
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\myplugin.folder.com\banzaicloud\k8s\0.7.6\windows_amd64 as a candidate package for myplugin.folder.com/banzaicloud/k8s 0.7.6
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: including .terraform\plugins\registry.terraform.io\hashicorp\azuread\0.10.0\windows_amd64 as a candidate package for registry.terraform.io/hashicorp/azuread 0.10.0
-2020/06/09 10:23:42 [DEBUG] Service discovery for registry.terraform.io at https://registry.terraform.io/.well-known/terraform.json
 Usi2020/06/09 10:23:42 [TRACE] HTTP client GET request to https://registry.terraform.io/.well-known/terraform.json
ng previously-installed hashicorp/null v2.1.2
- Using previously-installed myplugin.folder.com/banzaicloud/k8s v0.7.6
- Using previously-installed hashicorp/azuread v0.10.0
- Using previously-installed hashicorp/template v2.1.2
- Using previously-installed hashicorp/random v2.2.1
- Using previously-installed hashicorp/azurerm v2.13.0
- Using previously-installed hashicorp/helm v1.1.1
- Using previously-installed hashicorp/kubernetes v1.9.0
- Finding latest version of hashicorp/k8s...
2020/06/09 10:23:42 [DEBUG] GET https://registry.terraform.io/v1/providers/hashicorp/k8s/versions
2020/06/09 10:23:42 [TRACE] HTTP client GET request to https://registry.terraform.io/v1/providers/hashicorp/k8s/versions
2020/06/09 10:23:42 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:43 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform\plugins
2020/06/09 10:23:44 [DEBUG] GET https://registry.terraform.io/v1/providers/-/k8s/versions
2020/06/09 10:23:44 [TRACE] HTTP client GET request to https://registry.terraform.io/v1/providers/-/k8s/versions

Error: Failed to install provider

Error while installing hashicorp/k8s: provider registry registry.terraform.io
does not have a provider named registry.terraform.io/hashicorp/k8s

Something went wrong

@stickynote:

Now that you updated your provider source to www.telmate.com/telmate/proxmo you need to move the binary from DEST_DIR=~/.terraform.d/plugins/registry.terraform.io/telmate/proxmox/0.0.1/linux_amd64/
to DEST_DIR=~/.terraform.d/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64/ - the HOSTNAME portion of the source changed, so the expected filepath changed.

As for terraform bundle, you need to use a v0.12 terraform-bundle to build bundles for terraform v0.12 (https://github.com/hashicorp/terraform/tree/master/tools/terraform-bundle#building)

@iaingblack : Let's see what's going on there! It would help if I could see your entire configuration. Do you have any modules that use the k8s provider that haven't been updated to include the source? If so, the source needs to be declared in each module: without a source specified, terraform defaults to hashicorp/{providername}.

@iaingblack : Let's see what's going on there! It would help if I could see your entire configuration. Do you have any modules that use the k8s provider that haven't been updated to include the source? If so, the source needs to be declared _in each module_: without a source specified, terraform defaults to hashicorp/{providername}.

Ah! Yes. Once I updated my config and removed that module reference (just to test it would validate and plan against the initial provider resources) it started to work. Thanks! Sorry I missed, didn't seem like that would be a required change at the module level also when the provider source is referenced in the main file. So the above 'broken' code also works now. Apologies everyone for adding to the confusion!

@iaingblack it's quite alright, it's all confusing and we don't have the full documentation published yet :)


To give some extra information: The provider source needs to be declared in each module because an interesting side effect of the provider source work is that we can now use multiple providers with the same name in configuration. Each module could use a provider named 'dns' with a different source. Internally, terraform uses the source to create a FQN (fully-qualified name) for each provider, so you could have for example three modules, each using one of "mildwonkey/dns" "hashicorp/dns" and "yourname/dns".

You can also use each provider in a single configuration, though I don't think I can explain it well enough in a comment. I'm not our best doc writer by any means, but I do have some examples here

Keep in mind that this will all "just work" for the most common cases: configurations with hashicorp providers (only). Terraform will assume that a provider without a source is a default (hashicorp) provider. But, as the folks in this issue have found, there's more effort involved for users and module developers with more complicated modules and/or locally installed providers.

@StickyNote:

Now that you updated your provider source to www.telmate.com/telmate/proxmo you need to move the binary from DEST_DIR=~/.terraform.d/plugins/registry.terraform.io/telmate/proxmox/0.0.1/linux_amd64/
to DEST_DIR=~/.terraform.d/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64/ - the HOSTNAME portion of the source changed, so the expected filepath changed.

As for terraform bundle, you need to use a v0.12 terraform-bundle to build bundles for terraform v0.12 (https://github.com/hashicorp/terraform/tree/master/tools/terraform-bundle#building)

@mildwonkey
I've placed the binary in the right place. eg:

DEST_DIR=~/.terraform.d/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64/

when I pasted the TRACE log

I think I am missing something, but I don't know what :/

I've also tried to replicate local tree done by terraform providers mirror ~/.terraform.d/plugins command with terraform-bundle.
There is the zipped provider binary and two json files: an index.json and {plugin_version}.json containing a h1 hash.
I thought that terraform-bundle v0.13 do that for us. Is that the case?
How can I produce this h1 hash ?

EDIT:
I manager to get terraform init working with placing the binary in the local cache of the project as @iaingblack suggered. Thumb up for this suggestion even if this isn't the proper way to do it.

My setup now is like:

DEST_DIR=${PROJECT_ROOT}/.terraform/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64/

main.tf is the same as first comment
and versions.tf:

terraform {
  required_providers {
    proxmox = {
      source  = "www.telmate.com/telmate/proxmox"
      version = "0.0.1"
    }
  }
  required_version = ">= 0.13"
}

My TRACE log:

2020/06/10 10:14:42 [INFO] Terraform version: 0.13.0 beta1 
2020/06/10 10:14:42 [INFO] Go runtime version: go1.14.2
2020/06/10 10:14:42 [INFO] CLI args: []string{"/home/sticky-note/.terraform.versions/terraform_0.13.0-beta1", "init", "-no-color"}
2020/06/10 10:14:42 [DEBUG] Attempting to open CLI config file: /home/sticky-note/.terraformrc
2020/06/10 10:14:42 Loading CLI configuration from /home/sticky-note/.terraformrc
2020/06/10 10:14:42 [DEBUG] checking for credentials in "/home/sticky-note/.terraform.d/plugins"
2020/06/10 10:14:42 [DEBUG] checking for credentials in "/home/sticky-note/.terraform.d/plugins/linux_amd64"
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /home/sticky-note/.local/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /home/sticky-note/.local/share/flatpak/exports/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /var/lib/flatpak/exports/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /usr/local/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /usr/share/terraform/plugins
2020/06/10 10:14:42 [INFO] CLI command args: []string{"init", "-no-color"}

Initializing the backend...
2020/06/10 10:14:42 [TRACE] Meta.Backend: built configuration for "remote" backend with hash value 2176854563
2020/06/10 10:14:42 [TRACE] Meta.Backend: backend has not previously been initialized in this working directory
2020/06/10 10:14:42 [DEBUG] New state was assigned lineage "49a524fd-5107-6d8a-2588-680c41499d83"
2020/06/10 10:14:42 [TRACE] Meta.Backend: moving from default local state only to "remote" backend
2020/06/10 10:14:42 [DEBUG] Service discovery for app.terraform.io at https://app.terraform.io/.well-known/terraform.json
2020/06/10 10:14:42 [TRACE] HTTP client GET request to https://app.terraform.io/.well-known/terraform.json
2020/06/10 10:14:43 [DEBUG] Retrieve version constraints for service tfe.v2.1 and product terraform
2020/06/10 10:14:43 [TRACE] HTTP client GET request to https://checkpoint-api.hashicorp.com/v1/versions/tfe.v2.1?product=terraform
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "."
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.versions"
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.d/plugins"
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.d/plugins/linux_amd64"
2020/06/10 10:14:45 [WARN] found legacy provisioner "terraform-provisioner-proxmox"
2020/06/10 10:14:45 [INFO] Failed to read plugin lock file .terraform/plugins/linux_amd64/lock.json: open .terraform/plugins/linux_amd64/lock.json: no such file or directory
2020/06/10 10:14:45 [TRACE] backend/local: state manager for workspace "default" will:
 - read initial snapshot from terraform.tfstate
 - write new snapshots to terraform.tfstate
 - create any backup at terraform.tfstate.backup
2020/06/10 10:14:45 [TRACE] statemgr.Filesystem: reading initial snapshot from terraform.tfstate
2020/06/10 10:14:45 [TRACE] statemgr.Filesystem: snapshot file has nil snapshot, but that's okay
2020/06/10 10:14:45 [TRACE] statemgr.Filesystem: read nil snapshot
2020/06/10 10:14:45 [TRACE] Meta.Backend: ignoring local "default" workspace because its state is empty
2020/06/10 10:14:45 [DEBUG] New state was assigned lineage "{...}"
2020/06/10 10:14:45 [TRACE] Preserving existing state lineage "{...}"

Successfully configured the backend "remote"! Terraform will automatically
use this backend unless the backend configuration changes.
2020/06/10 10:14:45 [TRACE] Meta.Backend: instantiated backend of type *remote.Remote
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "."
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.versions"
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.d/plugins"
2020/06/10 10:14:45 [DEBUG] checking for provisioner in "/home/sticky-note/.terraform.d/plugins/linux_amd64"
2020/06/10 10:14:45 [WARN] found legacy provisioner "terraform-provisioner-proxmox"
2020/06/10 10:14:45 [INFO] Failed to read plugin lock file .terraform/plugins/linux_amd64/lock.json: open .terraform/plugins/linux_amd64/lock.json: no such file or directory
2020/06/10 10:14:45 [TRACE] Meta.Backend: backend *remote.Remote supports operations

Initializing provider plugins...
2020/06/10 10:14:46 [TRACE] providercache.fillMetaCache: scanning directory .terraform/plugins
2020/06/10 10:14:46 [TRACE] getproviders.SearchLocalDirectory: found www.telmate.com/telmate/proxmox v0.0.1 for linux_amd64 at .terraform/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64
2020/06/10 10:14:46 [TRACE] providercache.fillMetaCache: including .terraform/plugins/www.telmate.com/telmate/proxmox/0.0.1/linux_amd64 as a candidate package for www.telmate.com/telmate/proxmox 0.0.1
2020/06/10 10:14:46 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform/plugins
- Using previously-installed www.telmate.com/telmate/proxmox v0.0.1

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.

Hope this will help

From the trace output, it looks like the ~/.terraform.d/plugins directory isn't being consulted for provider plugins... we can see where it is looking in the early log lines like this:

2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /home/sticky-note/.local/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /home/sticky-note/.local/share/flatpak/exports/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /var/lib/flatpak/exports/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /usr/local/share/terraform/plugins
2020/06/10 10:14:42 [DEBUG] ignoring non-existing provider search directory /usr/share/terraform/plugins

It seems like perhaps the ~/.terraform.d/plugins search path got lost somewhere during the refactoring to add support for the XDG-basedir paths. If so, we can fix that up before final release so that things will work, though I've run out of time today so I won't be able to dig in and verify that right now.

If my theory above is correct then I think you should be able to get the behavior you wanted by creating and populating one of the directories listed in the above, like ~/.local/share/terraform/plugins, and creating the same directory structure in there. Could you give that a try and let us know if it works better, @sticky-note? Either way, we should be able to restore ~/.terraform.d/plugins as one of the search paths before the final release too.

I've tried the same with

terraform {
  required_providers {
    keycloak = {
      source = "github.com/mrparker/keycloak"
      version = "1.19.0"
    }
  }
  required_version = ">= 0.13"
}

and the following directory layout

$ find .terraform/plugins                                                       
.terraform/plugins/darwin_amd64/terraform-provider-keycloak_v1.19.0
.terraform/plugins/github.com/mrparker/keycloak/1.19.0/terraform-provider-keycloak_v1.19.0

but the plugin doesn't seem to be recognized

$ terraform init
2020/06/10 17:34:50 [INFO] Terraform version: 0.13.0 beta1 
2020/06/10 17:34:50 [INFO] Go runtime version: go1.14.2
2020/06/10 17:34:50 [INFO] CLI args: []string{"/Users/cpesch/Downloads/terraform", "init"}
2020/06/10 17:34:50 [DEBUG] Attempting to open CLI config file: /Users/cpesch/.terraformrc
2020/06/10 17:34:50 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2020/06/10 17:34:50 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins"
2020/06/10 17:34:50 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/10 17:34:50 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/10 17:34:50 [DEBUG] ignoring non-existing provider search directory /Users/cpesch/Library/Application Support/io.terraform/plugins
2020/06/10 17:34:50 [DEBUG] ignoring non-existing provider search directory /Library/Application Support/io.terraform/plugins
2020/06/10 17:34:50 [INFO] CLI command args: []string{"init"}

Initializing the backend...
2020/06/10 17:34:50 [TRACE] Meta.Backend: no config given or present on disk, so returning nil config
2020/06/10 17:34:50 [TRACE] Preserving existing state lineage "0118919b-bc31-eb5c-b117-f40cf70f8c17"
2020/06/10 17:34:50 [TRACE] Preserving existing state lineage "0118919b-bc31-eb5c-b117-f40cf70f8c17"
2020/06/10 17:34:50 [TRACE] Meta.Backend: working directory was previously initialized but has no backend (is using legacy remote state?)
2020/06/10 17:34:50 [TRACE] Meta.Backend: using default local state only (no backend configuration, and no existing initialized backend)
2020/06/10 17:34:50 [TRACE] Meta.Backend: instantiated backend of type <nil>
2020/06/10 17:34:50 [DEBUG] checking for provisioner in "."
2020/06/10 17:34:50 [DEBUG] checking for provisioner in "/Users/cpesch/Downloads"
2020/06/10 17:34:50 [DEBUG] checking for provisioner in ".terraform/plugins/darwin_amd64"
2020/06/10 17:34:50 [DEBUG] checking for provisioner in "/Users/cpesch/.terraform.d/plugins"
2020/06/10 17:34:50 [DEBUG] checking for provisioner in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/10 17:34:50 [TRACE] Meta.Backend: backend <nil> does not support operations, so wrapping it in a local backend
2020/06/10 17:34:50 [TRACE] backend/local: state manager for workspace "default" will:
 - read initial snapshot from terraform.tfstate
 - write new snapshots to terraform.tfstate
 - create any backup at terraform.tfstate.backup
2020/06/10 17:34:50 [TRACE] statemgr.Filesystem: reading initial snapshot from terraform.tfstate
2020/06/10 17:34:50 [TRACE] statemgr.Filesystem: snapshot file has nil snapshot, but that's okay
2020/06/10 17:34:50 [TRACE] statemgr.Filesystem: read nil snapshot
2020/06/10 17:34:50 [TRACE] providercache.fillMetaCache: scanning directory .terraform/plugins

Initializing provider plugins...
2020/06/10 17:34:50 [DEBUG] Service discovery for github.com at https://github.com/.well-known/terraform.json
2020/06/10 17:34:50 [TRACE] HTTP client GET request to https://github.com/.well-known/terraform.json
- Finding github.com/mrparker/keycloak versions matching "1.19.0"...

Error: Failed to query available provider packages

Could not retrieve the list of available versions for provider
github.com/mrparker/keycloak: host github.com does not offer a Terraform
provider registry

Moving the structure to something like/Users/cpesch/Library/Application Support/io.terraform/plugins didn't help.

I think I've followed https://github.com/hashicorp/terraform/blob/doc-v0.13-upgrade/website/upgrade-guides/0-13.html.markdown#data-resource-reads-can-no-longer-be-disabled-by--refresh-false or do I miss something?

@cpesch The platform needs to be part of the path. Try adding darwin_amd64 after the version number:

.terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64/terraform-provider-keycloak_v1.19.0

I've just merged a fix for the missing local .terraform.d/plugins directory. This will be fixed in 0.13-beta2 (planned for next week). Thanks everyone!

@alisdair Thank you. I've moved the plugin accordingly

$ ls .terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64/terraform-provider-keycloak_v1.19.0
.terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64/terraform-provider-keycloak_v1.19.0

It had the effect that the plugin is showing up as a candidate but still registry.terraform.io is consulted which fails:

$ terraform init
2020/06/11 17:48:19 [INFO] Terraform version: 0.13.0 beta1 
2020/06/11 17:48:19 [INFO] Go runtime version: go1.14.2
2020/06/11 17:48:19 [INFO] CLI args: []string{"/Users/cpesch/Downloads/terraform", "init"}
2020/06/11 17:48:19 [DEBUG] Attempting to open CLI config file: /Users/cpesch/.terraformrc
2020/06/11 17:48:19 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2020/06/11 17:48:19 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins"
2020/06/11 17:48:19 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/11 17:48:19 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/11 17:48:19 [DEBUG] ignoring non-existing provider search directory /Users/cpesch/Library/Application Support/io.terraform/plugins
2020/06/11 17:48:19 [DEBUG] ignoring non-existing provider search directory /Library/Application Support/io.terraform/plugins
2020/06/11 17:48:19 [INFO] CLI command args: []string{"init"}
2020/06/11 17:48:19 [TRACE] ModuleInstaller: installing child modules for . into .terraform/modules
Initializing modules...
2020/06/11 17:48:19 [DEBUG] Module installer: begin labs-linkfinder-openid-client
2020/06/11 17:48:19 [TRACE] ModuleInstaller: Module installer: labs-linkfinder-openid-client <nil> already installed in .terraform/modules/labs-linkfinder-openid-client
2020/06/11 17:48:19 [TRACE] modsdir: writing modules manifest to .terraform/modules/modules.json

Initializing the backend...
2020/06/11 17:48:19 [TRACE] Meta.Backend: no config given or present on disk, so returning nil config
2020/06/11 17:48:19 [TRACE] Preserving existing state lineage "0118919b-bc31-eb5c-b117-f40cf70f8c17"
2020/06/11 17:48:19 [TRACE] Preserving existing state lineage "0118919b-bc31-eb5c-b117-f40cf70f8c17"
2020/06/11 17:48:19 [TRACE] Meta.Backend: working directory was previously initialized but has no backend (is using legacy remote state?)
2020/06/11 17:48:19 [TRACE] Meta.Backend: using default local state only (no backend configuration, and no existing initialized backend)
2020/06/11 17:48:19 [TRACE] Meta.Backend: instantiated backend of type <nil>
2020/06/11 17:48:19 [DEBUG] checking for provisioner in "."
2020/06/11 17:48:19 [DEBUG] checking for provisioner in "/Users/cpesch/Downloads"
2020/06/11 17:48:19 [DEBUG] checking for provisioner in ".terraform/plugins/darwin_amd64"
2020/06/11 17:48:19 [DEBUG] checking for provisioner in "/Users/cpesch/.terraform.d/plugins"
2020/06/11 17:48:19 [DEBUG] checking for provisioner in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/11 17:48:19 [TRACE] Meta.Backend: backend <nil> does not support operations, so wrapping it in a local backend
2020/06/11 17:48:19 [TRACE] backend/local: state manager for workspace "default" will:
 - read initial snapshot from terraform.tfstate
 - write new snapshots to terraform.tfstate
 - create any backup at terraform.tfstate.backup
2020/06/11 17:48:19 [TRACE] statemgr.Filesystem: reading initial snapshot from terraform.tfstate
2020/06/11 17:48:19 [TRACE] statemgr.Filesystem: snapshot file has nil snapshot, but that's okay
2020/06/11 17:48:19 [TRACE] statemgr.Filesystem: read nil snapshot

2020/06/11 17:48:19 [TRACE] providercache.fillMetaCache: scanning directory .terraform/plugins
Initializing provider plugins...
2020/06/11 17:48:19 [TRACE] getproviders.SearchLocalDirectory: found github.com/mrparker/keycloak v1.19.0 for darwin_amd64 at .terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64
2020/06/11 17:48:19 [TRACE] providercache.fillMetaCache: including .terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64 as a candidate package for github.com/mrparker/keycloak 1.19.0
2020/06/11 17:48:19 [DEBUG] Service discovery for registry.terraform.io at https://registry.terraform.io/.well-known/terraform.json
- Finding hashicorp/keycloak versions matching "~> 1.19"...
2020/06/11 17:48:19 [TRACE] HTTP client GET request to https://registry.terraform.io/.well-known/terraform.json
2020/06/11 17:48:19 [DEBUG] GET https://registry.terraform.io/v1/providers/hashicorp/keycloak/versions
2020/06/11 17:48:19 [TRACE] HTTP client GET request to https://registry.terraform.io/v1/providers/hashicorp/keycloak/versions
2020/06/11 17:48:19 [DEBUG] GET https://registry.terraform.io/v1/providers/-/keycloak/versions
2020/06/11 17:48:19 [TRACE] HTTP client GET request to https://registry.terraform.io/v1/providers/-/keycloak/versions

Error: Failed to install provider

Error while installing hashicorp/keycloak: provider registry
registry.terraform.io does not have a provider named
registry.terraform.io/hashicorp/keycloak

Is still something missing?

@cpesch It sounds like you are experiencing the same issue as the original one reported here, but with a different cause (ie, this won't be fixed by the PR I just merged).

The fact that terraform is querying the aliases table for something called hashicorp/keycloak is a hint: does your configuration use any modules which have keyclock resources? If so, each module will need to be upgraded to also include a source block.

Starting in terraform v0.13-beta2, the terraform providers command will show you every provider required by your configuration per module (in 0.13-beta1 it lumped everything together into the root module, which isn't very helpful!). You can build terraform from master to use this command or wait for our next beta release next week.

@mildwonkey my project is tiny. Calling terraform 0.13upgrade

$ terraform 0.13upgrade
2020/06/11 19:07:33 [INFO] Terraform version: 0.13.0 beta1 
2020/06/11 19:07:33 [INFO] Go runtime version: go1.14.2
2020/06/11 19:07:33 [INFO] CLI args: []string{"/Users/cpesch/Downloads/terraform", "0.13upgrade"}
2020/06/11 19:07:33 [DEBUG] Attempting to open CLI config file: /Users/cpesch/.terraformrc
2020/06/11 19:07:33 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2020/06/11 19:07:33 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins"
2020/06/11 19:07:33 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/11 19:07:33 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/11 19:07:33 [DEBUG] ignoring non-existing provider search directory /Users/cpesch/Library/Application Support/io.terraform/plugins
2020/06/11 19:07:33 [DEBUG] ignoring non-existing provider search directory /Library/Application Support/io.terraform/plugins
2020/06/11 19:07:33 [INFO] CLI command args: []string{"0.13upgrade"}

This command will update the configuration files in the given directory to use
the new provider source features from Terraform v0.13. It will also highlight
any providers for which the source cannot be detected, and advise how to
proceed.

We recommend using this command in a clean version control work tree, so that
you can easily see the proposed changes as a diff against the latest commit.
If you have uncommited changes already present, we recommend aborting this
command and dealing with them before running this command again.

Would you like to upgrade the module in the current directory? yes
-----------------------------------------------------------------------------

Upgrade complete!

Use your version control system to review the proposed changes, make any
necessary adjustments, and then commit.
 ```

added a file versions.tf which I've extended to

terraform {
required_providers {
keycloak = {
source = "github.com/mrparker/keycloak"
version = "1.19.0"
}
}
required_version = ">= 0.13"
}

The terraform.tfstate file still contains lines referring to 

`      "provider": "provider[\"registry.terraform.io/-/keycloak\"]",
`

Changing that to 

`      "provider": "provider[\"github.com/mrparker/keycloak\"]",
`

didn't help.

Moving the terraform.tfstate file away didn't help either:

$ terraform providers
.
โ”œโ”€โ”€ provider[github.com/mrparker/keycloak] 1.19.0, ~> 1.19
โ””โ”€โ”€ provider[registry.terraform.io/hashicorp/keycloak]
```

Still hashicorp/keycloak shows up. I'll try to build from the master tomorrow if that helps. Or do you have another idea?

@cpesch Interesting! I just tried to reproduce this with my own custom unpublished provider, and was not able to. It does seem like it's a separate issue from the original one reported here, though.

Could you submit a new issue with this information, with a minimal reproduction case? If you can include the exact configuration you're using (including any modules) this will help us figure out what's wrong.

Closing this issue as I believe it to be resolved by #25214.

@alisdair I've compiled the master and the included modules are the source of the hashicorp references:

~/go/src/github.com/hashicorp/terraform/tfmaster providers
2020/06/11 19:42:08 [INFO] Terraform version: 0.13.0 dev 
2020/06/11 19:42:08 [INFO] Go runtime version: go1.14.4
2020/06/11 19:42:08 [INFO] CLI args: []string{"/Users/cpesch/go/src/github.com/hashicorp/terraform/tfmaster", "providers"}
2020/06/11 19:42:08 [DEBUG] Attempting to open CLI config file: /Users/cpesch/.terraformrc
2020/06/11 19:42:08 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2020/06/11 19:42:08 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins"
2020/06/11 19:42:08 [DEBUG] checking for credentials in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/11 19:42:08 [DEBUG] ignoring non-existing provider search directory terraform.d/plugins
2020/06/11 19:42:08 [DEBUG] will search for provider plugins in /Users/cpesch/.terraform.d/plugins
2020/06/11 19:42:08 [TRACE] getproviders.SearchLocalDirectory: found github.com/mrparker/keycloak v1.18.0 for darwin_amd64 at /Users/cpesch/.terraform.d/plugins/github.com/mrparker/keycloak/1.18.0/darwin_amd64
2020/06/11 19:42:08 [TRACE] getproviders.SearchLocalDirectory: found github.com/mrparker/keycloak v1.19.0 for darwin_amd64 at /Users/cpesch/.terraform.d/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64
2020/06/11 19:42:08 [DEBUG] ignoring non-existing provider search directory /Users/cpesch/Library/Application Support/io.terraform/plugins
2020/06/11 19:42:08 [DEBUG] ignoring non-existing provider search directory /Library/Application Support/io.terraform/plugins
2020/06/11 19:42:08 [INFO] CLI command args: []string{"providers"}
2020/06/11 19:42:08 [TRACE] Meta.Backend: no config given or present on disk, so returning nil config
2020/06/11 19:42:08 [TRACE] Preserving existing state lineage "0118919b-bc31-eb5c-b117-f40cf70f8c17"
2020/06/11 19:42:08 [TRACE] Preserving existing state lineage "0118919b-bc31-eb5c-b117-f40cf70f8c17"
2020/06/11 19:42:08 [TRACE] Meta.Backend: working directory was previously initialized but has no backend (is using legacy remote state?)
2020/06/11 19:42:08 [TRACE] Meta.Backend: using default local state only (no backend configuration, and no existing initialized backend)
2020/06/11 19:42:08 [TRACE] Meta.Backend: instantiated backend of type <nil>
2020/06/11 19:42:08 [TRACE] providercache.fillMetaCache: scanning directory .terraform/plugins
2020/06/11 19:42:08 [TRACE] getproviders.SearchLocalDirectory: found github.com/mrparker/keycloak v1.19.0 for darwin_amd64 at .terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64
2020/06/11 19:42:08 [TRACE] providercache.fillMetaCache: including .terraform/plugins/github.com/mrparker/keycloak/1.19.0/darwin_amd64 as a candidate package for github.com/mrparker/keycloak 1.19.0
2020/06/11 19:42:08 [DEBUG] checking for provisioner in "."
2020/06/11 19:42:08 [DEBUG] checking for provisioner in "/Users/cpesch/go/src/github.com/hashicorp/terraform"
2020/06/11 19:42:08 [DEBUG] checking for provisioner in ".terraform/plugins/darwin_amd64"
2020/06/11 19:42:08 [DEBUG] checking for provisioner in "/Users/cpesch/.terraform.d/plugins"
2020/06/11 19:42:08 [DEBUG] checking for provisioner in "/Users/cpesch/.terraform.d/plugins/darwin_amd64"
2020/06/11 19:42:08 [TRACE] Meta.Backend: backend <nil> does not support operations, so wrapping it in a local backend
2020/06/11 19:42:08 [TRACE] backend/local: state manager for workspace "default" will:
 - read initial snapshot from terraform.tfstate
 - write new snapshots to terraform.tfstate
 - create any backup at terraform.tfstate.backup
2020/06/11 19:42:08 [TRACE] statemgr.Filesystem: reading initial snapshot from terraform.tfstate
2020/06/11 19:42:08 [TRACE] statemgr.Filesystem: snapshot file has nil snapshot, but that's okay
2020/06/11 19:42:08 [TRACE] statemgr.Filesystem: read nil snapshot

Providers required by configuration:
.
โ”œโ”€โ”€ provider[github.com/mrparker/keycloak] 1.19.0
โ””โ”€โ”€ module.labs-linkfinder-openid-client
    โ””โ”€โ”€ provider[registry.terraform.io/hashicorp/keycloak]

@mildwonkey Thanks

@mildwonkey @apparentlymart Everything is working as expected in v0.13.0-beta-2. terraform init and terraform init -upgrade too. Nice work, thanks guys.

I'm going to lock this issue because it has been closed for _30 days_ โณ. This helps our maintainers find and focus on the active issues.

If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

Was this page helpful?
0 / 5 - 0 ratings