Skip to content

Version 0.14.1 is not back compatible  #63

Description

@goruha

What

@mumoshu this #62 PR breaks our terraform module.

resource "helmfile_release_set" "default" {
  kubeconfig = "${path.module}/kubeconfig"

  helm_binary = "helm3"
  binary      = "helmfile"
  path        = "../../helmfiles/${var.workdir}/helmfile.yaml"
  concurrency = 0
  environment = var.helmfile_environment

  # Environment variables available to helmfile's requireEnv and commands being run by helmfile
  environment_variables = merge(var.environment_variables, { for key, value in module.chamber : key => value.value })

  depends_on = [
    data.shell_script.kubeconfig
  ]
}

This code works on version 0.14.0 and is broken on 0.14.1

Error message that we see is

Initializing modules...

Initializing the backend...

Initializing provider plugins...
- Reusing previous version of hashicorp/random from the dependency lock file
- Reusing previous version of hashicorp/aws from the dependency lock file
- Reusing previous version of mumoshu/helmfile from the dependency lock file
- Reusing previous version of scottwinkler/shell from the dependency lock file
- Reusing previous version of eddycharly/kops from the dependency lock file
- Reusing previous version of hashicorp/template from the dependency lock file
- Reusing previous version of hashicorp/null from the dependency lock file
- Using previously-installed hashicorp/template v2.2.0
- Using previously-installed hashicorp/null v3.1.0
- Using previously-installed hashicorp/random v3.1.0
- Using previously-installed hashicorp/aws v3.60.0
- Using previously-installed mumoshu/helmfile v0.14.1
- Using previously-installed scottwinkler/shell v1.7.7
- Using previously-installed eddycharly/kops v1.19.0-alpha.6

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.
Acquiring state lock. This may take a few moments...
helmfile_release_set.default: Refreshing state... [id=c4f4qke9fsurke49e1d0]
╷
│ Warning: Value for undeclared variable
│
│ The root module does not declare a variable named "cluster_name" but a value was found in file "ue1-staging-helm-dashboard.terraform.tfvars.json". If you meant to use this value, add a "variable" block to the configuration.
│
│ To silence these warnings, use TF_VAR_... environment variables to provide certain "global" settings to all configurations in your organization. To reduce the verbosity of these warnings, use the -compact-warnings option.
╵
╷
│ Error: diffing release set: running helmfile diff: running command: /usr/bin/helmfile: exit status 3
│ err: no releases found that matches specified selector() and environment(default), in any helmfile
│
│
│   with helmfile_release_set.default,
│   on main.tf line 97, in resource "helmfile_release_set" "default":
│   97: resource "helmfile_release_set" "default" {
│
╵
Releasing state lock. This may take a few moments...
Error: 1 error occurred:
	* step "plan cmd": job "terraform subcommand": command "/usr/bin/terraform-0.15 plan -out ue1-staging-helm-dashboard.planfile -var-file ue1-staging-helm-dashboard.terraform.tfvars.json" in "./components/terraform/helmfiles": exit status 1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions