Skip to content

Errot running fmt through terramorf #6

Description

@julianolf

The argument -var-file is being appended to commands that does not support it when using the var_files feature inside terramorf.hcl configuration file.

Suppose we have the following configuration.

terraform {
  required_version = "1.6.6"

  backend {
    bucket = "terraform-${environment}"
  }

  var_files = [
    "environments/${environment}.tfvars"
  ]
}

environment "dev" {}

When trying to run the fmt command we endup with the following error.

% terramorf dev fmt
Terraform 1.6.6 required

+ /Users/juliano/.local/share/terramorf/bin/terraform-1.6.6 fmt -var-file=environments/dev.tfvars
Usage: terraform [global options] fmt [options] [target...]

  Rewrites all Terraform configuration files to a canonical format. All
  configuration files (.tf), variables files (.tfvars), and testing files
  (.tftest.hcl) are updated. JSON files (.tf.json, .tfvars.json, or
  .tftest.json) are not modified.

  By default, fmt scans the current directory for configuration files. If you
  provide a directory for the target argument, then fmt will scan that
  directory instead. If you provide a file, then fmt will process just that
  file. If you provide a single dash ("-"), then fmt will read from standard
  input (STDIN).

  The content must be in the Terraform language native syntax; JSON is not
  supported.

Options:

  -list=false    Don't list files whose formatting differs
                 (always disabled if using STDIN)

  -write=false   Don't write to source files
                 (always disabled if using STDIN or -check)

  -diff          Display diffs of formatting changes

  -check         Check if the input is formatted. Exit status will be 0 if all
                 input is properly formatted and non-zero otherwise.

  -no-color      If specified, output won't contain any color.

  -recursive     Also process files in subdirectories. By default, only the
                 given directory (or current directory) is processed.
Error parsing command-line flags: flag provided but not defined: -var-file

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