From 258f4603fb189ccad238e9420a7b27ff39be2788 Mon Sep 17 00:00:00 2001 From: Khosrow Moossavi Date: Tue, 1 Jun 2021 12:13:02 -0400 Subject: [PATCH 1/3] Remove deprecated '--sort-by-XXX' flags In v0.13.0 flags `--sort-by-required` and `--sort-by-type` have been deprecated in favor of `--sort-by required` and `--sort-by type` respectively. And they are completely being removed now (two releases after original announcement) Signed-off-by: Khosrow Moossavi --- cmd/root.go | 5 ----- internal/cli/config.go | 29 +++++------------------------ 2 files changed, 5 insertions(+), 29 deletions(-) diff --git a/cmd/root.go b/cmd/root.go index 6631cae..c683eb4 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -74,11 +74,6 @@ func NewCommand() *cobra.Command { cmd.PersistentFlags().BoolVar(new(bool), "hide-all", false, "hide all sections (default false)") cmd.PersistentFlags().MarkDeprecated("show-all", "more information: https://terraform-docs.io/user-guide/how-to/#visibility-of-sections\n\n") //nolint:errcheck,gosec cmd.PersistentFlags().MarkDeprecated("hide-all", "more information: https://terraform-docs.io/user-guide/how-to/#visibility-of-sections\n\n") //nolint:errcheck,gosec - - cmd.PersistentFlags().BoolVar(&config.Sort.Criteria.Required, "sort-by-required", false, "sort items by name and print required ones first (default false)") - cmd.PersistentFlags().BoolVar(&config.Sort.Criteria.Type, "sort-by-type", false, "sort items by type of them (default false)") - cmd.PersistentFlags().MarkDeprecated("sort-by-required", "use '--sort-by required' instead\n\n") //nolint:errcheck,gosec - cmd.PersistentFlags().MarkDeprecated("sort-by-type", "use '--sort-by type' instead\n\n") //nolint:errcheck,gosec // <== cmd.PersistentFlags().StringVar(&config.HeaderFrom, "header-from", "main.tf", "relative path of a file to read header from") diff --git a/internal/cli/config.go b/internal/cli/config.go index 11ee3b0..b83b614 100644 --- a/internal/cli/config.go +++ b/internal/cli/config.go @@ -342,26 +342,15 @@ var allSorts = []string{ // SortTypes list. var SortTypes = strings.Join(allSorts, ", ") -type sortby struct { - Name bool `name:"name"` - Required bool `name:"required"` - Type bool `name:"type"` -} type sort struct { - Enabled bool `mapstructure:"enabled"` - By string `mapstructure:"by"` - Criteria sortby `mapstructure:"-"` + Enabled bool `mapstructure:"enabled"` + By string `mapstructure:"by"` } func defaultSort() sort { return sort{ Enabled: true, By: sortName, - Criteria: sortby{ - Name: true, - Required: false, - Type: false, - }, } } @@ -369,9 +358,6 @@ func (s *sort) validate() error { if !contains(allSorts, s.By) { return fmt.Errorf("'%s' is not a valid sort type", s.By) } - if s.Criteria.Required && s.Criteria.Type { - return fmt.Errorf("'--sort-by-required' and '--sort-by-type' can't be used together") - } return nil } @@ -461,11 +447,6 @@ func (c *Config) process() error { //nolint:gocyclo } } - // Enable specified sort criteria - c.Sort.Criteria.Name = c.Sort.Enabled && c.Sort.By == sortName - c.Sort.Criteria.Required = c.Sort.Enabled && c.Sort.By == sortRequired - c.Sort.Criteria.Type = c.Sort.Enabled && c.Sort.By == sortType - return nil } @@ -499,9 +480,9 @@ func (c *Config) extract() (*print.Settings, *terraform.Options) { options.OutputValuesPath = c.OutputValues.From // sort - options.SortBy.Name = c.Sort.Enabled && c.Sort.Criteria.Name - options.SortBy.Required = c.Sort.Enabled && c.Sort.Criteria.Required - options.SortBy.Type = c.Sort.Enabled && c.Sort.Criteria.Type + options.SortBy.Name = c.Sort.Enabled && c.Sort.By == sortName + options.SortBy.Required = c.Sort.Enabled && c.Sort.By == sortRequired + options.SortBy.Type = c.Sort.Enabled && c.Sort.By == sortType // settings settings.EscapeCharacters = c.Settings.Escape From 25f03b4cf43a5822b27b920d7c41ebca4ec21eed Mon Sep 17 00:00:00 2001 From: Khosrow Moossavi Date: Tue, 1 Jun 2021 12:32:59 -0400 Subject: [PATCH 2/3] Remove deprecated '--show-all' and '--hide-all' flags In v0.13.0 flags `--show-all` and `--hide-all` have been deprecated. And they are completely being removed now (two releases after original announcement) Signed-off-by: Khosrow Moossavi --- cmd/root.go | 7 ------- docs/user-guide/configuration.md | 10 ++++++---- docs/user-guide/how-to.md | 4 ++-- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/cmd/root.go b/cmd/root.go index c683eb4..3f7f1b6 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -69,13 +69,6 @@ func NewCommand() *cobra.Command { cmd.PersistentFlags().BoolVar(&config.Sort.Enabled, "sort", true, "sort items") cmd.PersistentFlags().StringVar(&config.Sort.By, "sort-by", "name", "sort items by criteria ["+cli.SortTypes+"]") - // deprecated flags ==> - cmd.PersistentFlags().BoolVar(new(bool), "show-all", true, "show all sections") - cmd.PersistentFlags().BoolVar(new(bool), "hide-all", false, "hide all sections (default false)") - cmd.PersistentFlags().MarkDeprecated("show-all", "more information: https://terraform-docs.io/user-guide/how-to/#visibility-of-sections\n\n") //nolint:errcheck,gosec - cmd.PersistentFlags().MarkDeprecated("hide-all", "more information: https://terraform-docs.io/user-guide/how-to/#visibility-of-sections\n\n") //nolint:errcheck,gosec - // <== - cmd.PersistentFlags().StringVar(&config.HeaderFrom, "header-from", "main.tf", "relative path of a file to read header from") cmd.PersistentFlags().StringVar(&config.FooterFrom, "footer-from", "", "relative path of a file to read footer from (default \"\")") diff --git a/docs/user-guide/configuration.md b/docs/user-guide/configuration.md index 5514d5b..a0d4955 100644 --- a/docs/user-guide/configuration.md +++ b/docs/user-guide/configuration.md @@ -69,8 +69,8 @@ sections: hide: [] show: [] - hide-all: false # deprecated in v0.13.0 - show-all: true # deprecated in v0.13.0 + hide-all: false # deprecated in v0.13.0, removed in v0.15.0 + show-all: true # deprecated in v0.13.0, removed in v0.15.0 content: "" @@ -111,7 +111,8 @@ settings: - `sections.show-all` and `sections.show` **Note:** As of `v0.13.0`, `sections.hide-all` and `sections.show-all` are deprecated -and removed in favor of explicit use of `sections.hide` and `sections.show`. +in favor of explicit use of `sections.hide` and `sections.show`, and they are removed +as of `v0.15.0`. ## Version @@ -193,7 +194,8 @@ The following options are supported and can be used for `sections.show` and - `resources` (since `v0.11.0`) **Note:** As of `v0.13.0`, `sections.hide-all` and `sections.show-all` are deprecated -and removed in favor of explicit use of `sections.hide` and `sections.show`. +in favor of explicit use of `sections.hide` and `sections.show`, and they are removed +as of `v0.15.0`. ## Content diff --git a/docs/user-guide/how-to.md b/docs/user-guide/how-to.md index dd2ea75..2367978 100644 --- a/docs/user-guide/how-to.md +++ b/docs/user-guide/how-to.md @@ -61,8 +61,8 @@ options: - `--show ` - `--hide ` -- `--show-all` (deprecated in `v0.13.0`) -- `--hide-all` (deprecated in `v0.13.0`) +- `--show-all` (deprecated in `v0.13.0`, removed in `v0.15.0`) +- `--hide-all` (deprecated in `v0.13.0`, removed in `v0.15.0`) As of `v0.13.0` flags `--show-all` and `--hide-all` are deprecated in favor of explicit use of `--show` and `--hide`. In other words when `--show
` is From d77324cc02e7e048300e484dc5ad52927e61b9a9 Mon Sep 17 00:00:00 2001 From: Khosrow Moossavi Date: Wed, 2 Jun 2021 12:54:03 -0400 Subject: [PATCH 3/3] Add new '--show all' and '--hide all' sections New psuedo section `all` is added and can be used to show or hide _all_ sections. This can be used as a replacement for, now, deprecated and removed `--show-all` and `--hide-all` flags. Signed-off-by: Khosrow Moossavi --- cmd/root.go | 6 +++--- docs/reference/asciidoc-document.md | 10 +++++----- docs/reference/asciidoc-table.md | 10 +++++----- docs/reference/asciidoc.md | 10 +++++----- docs/reference/json.md | 10 +++++----- docs/reference/markdown-document.md | 10 +++++----- docs/reference/markdown-table.md | 10 +++++----- docs/reference/markdown.md | 10 +++++----- docs/reference/pretty.md | 10 +++++----- docs/reference/terraform-docs.md | 10 +++++----- docs/reference/tfvars-hcl.md | 10 +++++----- docs/reference/tfvars-json.md | 10 +++++----- docs/reference/tfvars.md | 10 +++++----- docs/reference/toml.md | 10 +++++----- docs/reference/xml.md | 10 +++++----- docs/reference/yaml.md | 10 +++++----- docs/user-guide/configuration.md | 1 + internal/cli/config.go | 6 ++++-- 18 files changed, 83 insertions(+), 80 deletions(-) diff --git a/cmd/root.go b/cmd/root.go index 3f7f1b6..53b3f84 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -62,9 +62,9 @@ func NewCommand() *cobra.Command { cmd.PersistentFlags().StringSliceVar(&config.Sections.Show, "show", []string{}, "show section ["+cli.AllSections+"]") cmd.PersistentFlags().StringSliceVar(&config.Sections.Hide, "hide", []string{}, "hide section ["+cli.AllSections+"]") - cmd.PersistentFlags().StringVar(&config.Output.File, "output-file", "", "File path to insert output into (default \"\")") - cmd.PersistentFlags().StringVar(&config.Output.Mode, "output-mode", "inject", "Output to file method ["+cli.OutputModes+"]") - cmd.PersistentFlags().StringVar(&config.Output.Template, "output-template", cli.OutputTemplate, "Output template") + cmd.PersistentFlags().StringVar(&config.Output.File, "output-file", "", "file path to insert output into (default \"\")") + cmd.PersistentFlags().StringVar(&config.Output.Mode, "output-mode", "inject", "output to file method ["+cli.OutputModes+"]") + cmd.PersistentFlags().StringVar(&config.Output.Template, "output-template", cli.OutputTemplate, "output template") cmd.PersistentFlags().BoolVar(&config.Sort.Enabled, "sort", true, "sort items") cmd.PersistentFlags().StringVar(&config.Sort.By, "sort-by", "name", "sort items by criteria ["+cli.SortTypes+"]") diff --git a/docs/reference/asciidoc-document.md b/docs/reference/asciidoc-document.md index 441735d..32f5a38 100644 --- a/docs/reference/asciidoc-document.md +++ b/docs/reference/asciidoc-document.md @@ -30,16 +30,16 @@ terraform-docs asciidoc document [PATH] [flags] --default show Default column or section (default true) --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --indent int indention level of AsciiDoc sections [1, 2, 3, 4, 5] (default 2) - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") --required show Required column or section (default true) --sensitive show Sensitive column or section (default true) - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") --type show Type column or section (default true) diff --git a/docs/reference/asciidoc-table.md b/docs/reference/asciidoc-table.md index 65b6d33..c64b21f 100644 --- a/docs/reference/asciidoc-table.md +++ b/docs/reference/asciidoc-table.md @@ -30,16 +30,16 @@ terraform-docs asciidoc table [PATH] [flags] --default show Default column or section (default true) --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --indent int indention level of AsciiDoc sections [1, 2, 3, 4, 5] (default 2) - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") --required show Required column or section (default true) --sensitive show Sensitive column or section (default true) - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") --type show Type column or section (default true) diff --git a/docs/reference/asciidoc.md b/docs/reference/asciidoc.md index c2f530e..1a5843b 100644 --- a/docs/reference/asciidoc.md +++ b/docs/reference/asciidoc.md @@ -34,13 +34,13 @@ terraform-docs asciidoc [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/json.md b/docs/reference/json.md index 005b57e..9e7f6b4 100644 --- a/docs/reference/json.md +++ b/docs/reference/json.md @@ -29,13 +29,13 @@ terraform-docs json [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/markdown-document.md b/docs/reference/markdown-document.md index b7fb44d..1e68410 100644 --- a/docs/reference/markdown-document.md +++ b/docs/reference/markdown-document.md @@ -31,17 +31,17 @@ terraform-docs markdown document [PATH] [flags] --escape escape special characters (default true) --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --html use HTML tags in genereted output (default true) --indent int indention level of Markdown sections [1, 2, 3, 4, 5] (default 2) - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") --required show Required column or section (default true) --sensitive show Sensitive column or section (default true) - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") --type show Type column or section (default true) diff --git a/docs/reference/markdown-table.md b/docs/reference/markdown-table.md index 7d6ed14..8f52d1b 100644 --- a/docs/reference/markdown-table.md +++ b/docs/reference/markdown-table.md @@ -31,17 +31,17 @@ terraform-docs markdown table [PATH] [flags] --escape escape special characters (default true) --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --html use HTML tags in genereted output (default true) --indent int indention level of Markdown sections [1, 2, 3, 4, 5] (default 2) - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") --required show Required column or section (default true) --sensitive show Sensitive column or section (default true) - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") --type show Type column or section (default true) diff --git a/docs/reference/markdown.md b/docs/reference/markdown.md index 2303099..ef48ffe 100644 --- a/docs/reference/markdown.md +++ b/docs/reference/markdown.md @@ -36,13 +36,13 @@ terraform-docs markdown [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/pretty.md b/docs/reference/pretty.md index 8a143e7..4510381 100644 --- a/docs/reference/pretty.md +++ b/docs/reference/pretty.md @@ -29,13 +29,13 @@ terraform-docs pretty [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/terraform-docs.md b/docs/reference/terraform-docs.md index 69f3649..f06b228 100644 --- a/docs/reference/terraform-docs.md +++ b/docs/reference/terraform-docs.md @@ -23,13 +23,13 @@ terraform-docs [PATH] [flags] --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") -h, --help help for terraform-docs - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/tfvars-hcl.md b/docs/reference/tfvars-hcl.md index f9e016e..e191af0 100644 --- a/docs/reference/tfvars-hcl.md +++ b/docs/reference/tfvars-hcl.md @@ -29,13 +29,13 @@ terraform-docs tfvars hcl [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/tfvars-json.md b/docs/reference/tfvars-json.md index 2149b5a..f7d2ef5 100644 --- a/docs/reference/tfvars-json.md +++ b/docs/reference/tfvars-json.md @@ -28,13 +28,13 @@ terraform-docs tfvars json [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/tfvars.md b/docs/reference/tfvars.md index 3e40e29..6947fca 100644 --- a/docs/reference/tfvars.md +++ b/docs/reference/tfvars.md @@ -24,13 +24,13 @@ Generate terraform.tfvars of inputs. -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/toml.md b/docs/reference/toml.md index c23987f..a4e9c66 100644 --- a/docs/reference/toml.md +++ b/docs/reference/toml.md @@ -28,13 +28,13 @@ terraform-docs toml [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/xml.md b/docs/reference/xml.md index ce5b1ed..75f93d6 100644 --- a/docs/reference/xml.md +++ b/docs/reference/xml.md @@ -28,13 +28,13 @@ terraform-docs xml [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/reference/yaml.md b/docs/reference/yaml.md index a5f5131..9230658 100644 --- a/docs/reference/yaml.md +++ b/docs/reference/yaml.md @@ -28,13 +28,13 @@ terraform-docs yaml [PATH] [flags] -c, --config string config file name (default ".terraform-docs.yml") --footer-from string relative path of a file to read footer from (default "") --header-from string relative path of a file to read header from (default "main.tf") - --hide strings hide section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] - --output-file string File path to insert output into (default "") - --output-mode string Output to file method [inject, replace] (default "inject") - --output-template string Output template (default "\n{{ .Content }}\n") + --hide strings hide section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --output-file string file path to insert output into (default "") + --output-mode string output to file method [inject, replace] (default "inject") + --output-template string output template (default "\n{{ .Content }}\n") --output-values inject output values into outputs (default false) --output-values-from string inject output values from file into outputs (default "") - --show strings show section [data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] + --show strings show section [all, data-sources, footer, header, inputs, modules, outputs, providers, requirements, resources] --sort sort items (default true) --sort-by string sort items by criteria [name, required, type] (default "name") ``` diff --git a/docs/user-guide/configuration.md b/docs/user-guide/configuration.md index a0d4955..c9084c4 100644 --- a/docs/user-guide/configuration.md +++ b/docs/user-guide/configuration.md @@ -183,6 +183,7 @@ Since `v0.10.0` The following options are supported and can be used for `sections.show` and `sections.hide`: +- `all` (since `v0.15.0`) - `data-sources` (since `v0.13.0`) - `header` - `footer` (since `v0.12.0`) diff --git a/internal/cli/config.go b/internal/cli/config.go index b83b614..ed3c7e8 100644 --- a/internal/cli/config.go +++ b/internal/cli/config.go @@ -88,6 +88,7 @@ func DefaultConfig() *Config { } const ( + sectionAll = "all" sectionDataSources = "data-sources" sectionFooter = "footer" sectionHeader = "header" @@ -100,6 +101,7 @@ const ( ) var allSections = []string{ + sectionAll, sectionDataSources, sectionFooter, sectionHeader, @@ -168,12 +170,12 @@ func (s *sections) visibility(section string) bool { return true } for _, n := range s.Show { - if n == section { + if n == sectionAll || n == section { return true } } for _, n := range s.Hide { - if n == section { + if n == sectionAll || n == section { return false } }