Update ux for "terraform init [-reconfigure]"
This commit is contained in:
parent
dc76bbee73
commit
f8256f6634
|
@ -15,6 +15,7 @@ import (
|
||||||
"github.com/hashicorp/terraform/internal/addrs"
|
"github.com/hashicorp/terraform/internal/addrs"
|
||||||
"github.com/hashicorp/terraform/internal/backend"
|
"github.com/hashicorp/terraform/internal/backend"
|
||||||
backendInit "github.com/hashicorp/terraform/internal/backend/init"
|
backendInit "github.com/hashicorp/terraform/internal/backend/init"
|
||||||
|
"github.com/hashicorp/terraform/internal/cloud"
|
||||||
"github.com/hashicorp/terraform/internal/configs"
|
"github.com/hashicorp/terraform/internal/configs"
|
||||||
"github.com/hashicorp/terraform/internal/configs/configschema"
|
"github.com/hashicorp/terraform/internal/configs/configschema"
|
||||||
"github.com/hashicorp/terraform/internal/getproviders"
|
"github.com/hashicorp/terraform/internal/getproviders"
|
||||||
|
@ -304,12 +305,25 @@ func (c *InitCommand) Run(args []string) int {
|
||||||
// by errors then we'll output them here so that the success message is
|
// by errors then we'll output them here so that the success message is
|
||||||
// still the final thing shown.
|
// still the final thing shown.
|
||||||
c.showDiagnostics(diags)
|
c.showDiagnostics(diags)
|
||||||
c.Ui.Output(c.Colorize().Color(strings.TrimSpace(outputInitSuccess)))
|
_, cloud := back.(*cloud.Cloud)
|
||||||
|
output := ""
|
||||||
|
if cloud {
|
||||||
|
output = outputInitSuccessCloud
|
||||||
|
} else {
|
||||||
|
output = outputInitSuccess
|
||||||
|
}
|
||||||
|
|
||||||
|
c.Ui.Output(c.Colorize().Color(strings.TrimSpace(output)))
|
||||||
|
|
||||||
if !c.RunningInAutomation {
|
if !c.RunningInAutomation {
|
||||||
// If we're not running in an automation wrapper, give the user
|
// If we're not running in an automation wrapper, give the user
|
||||||
// some more detailed next steps that are appropriate for interactive
|
// some more detailed next steps that are appropriate for interactive
|
||||||
// shell usage.
|
// shell usage.
|
||||||
c.Ui.Output(c.Colorize().Color(strings.TrimSpace(outputInitSuccessCLI)))
|
output = outputInitSuccessCLI
|
||||||
|
if cloud {
|
||||||
|
output = outputInitSuccessCLICloud
|
||||||
|
}
|
||||||
|
c.Ui.Output(c.Colorize().Color(strings.TrimSpace(output)))
|
||||||
}
|
}
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -1087,6 +1101,10 @@ const outputInitSuccess = `
|
||||||
[reset][bold][green]Terraform has been successfully initialized![reset][green]
|
[reset][bold][green]Terraform has been successfully initialized![reset][green]
|
||||||
`
|
`
|
||||||
|
|
||||||
|
const outputInitSuccessCloud = `
|
||||||
|
[reset][bold][green]Terraform Cloud has been successfully initialized![reset][green]
|
||||||
|
`
|
||||||
|
|
||||||
const outputInitSuccessCLI = `[reset][green]
|
const outputInitSuccessCLI = `[reset][green]
|
||||||
You may now begin working with Terraform. Try running "terraform plan" to see
|
You may now begin working with Terraform. Try running "terraform plan" to see
|
||||||
any changes that are required for your infrastructure. All Terraform commands
|
any changes that are required for your infrastructure. All Terraform commands
|
||||||
|
@ -1097,6 +1115,14 @@ rerun this command to reinitialize your working directory. If you forget, other
|
||||||
commands will detect it and remind you to do so if necessary.
|
commands will detect it and remind you to do so if necessary.
|
||||||
`
|
`
|
||||||
|
|
||||||
|
const outputInitSuccessCLICloud = `[reset][green]
|
||||||
|
You may now begin working with Terraform Cloud. Try running "terraform plan" to
|
||||||
|
see any changes that are required for your infrastructure.
|
||||||
|
|
||||||
|
If you ever set or change modules or configuration for Terraform, run
|
||||||
|
"terraform init" again to reinitialize your working directory.
|
||||||
|
`
|
||||||
|
|
||||||
// providerProtocolTooOld is a message sent to the CLI UI if the provider's
|
// providerProtocolTooOld is a message sent to the CLI UI if the provider's
|
||||||
// supported protocol versions are too old for the user's version of terraform,
|
// supported protocol versions are too old for the user's version of terraform,
|
||||||
// but a newer version of the provider is compatible.
|
// but a newer version of the provider is compatible.
|
||||||
|
|
|
@ -17,6 +17,7 @@ import (
|
||||||
"github.com/hashicorp/hcl/v2"
|
"github.com/hashicorp/hcl/v2"
|
||||||
"github.com/hashicorp/hcl/v2/hcldec"
|
"github.com/hashicorp/hcl/v2/hcldec"
|
||||||
"github.com/hashicorp/terraform/internal/backend"
|
"github.com/hashicorp/terraform/internal/backend"
|
||||||
|
"github.com/hashicorp/terraform/internal/cloud"
|
||||||
"github.com/hashicorp/terraform/internal/command/arguments"
|
"github.com/hashicorp/terraform/internal/command/arguments"
|
||||||
"github.com/hashicorp/terraform/internal/command/clistate"
|
"github.com/hashicorp/terraform/internal/command/clistate"
|
||||||
"github.com/hashicorp/terraform/internal/command/views"
|
"github.com/hashicorp/terraform/internal/command/views"
|
||||||
|
@ -921,9 +922,12 @@ func (m *Meta) backend_C_r_s(c *configs.Backend, cHash int, sMgr *clistate.Local
|
||||||
return nil, diags
|
return nil, diags
|
||||||
}
|
}
|
||||||
|
|
||||||
// By now the backend is successfully configured.
|
// By now the backend is successfully configured. If using Terraform Cloud, the success
|
||||||
m.Ui.Output(m.Colorize().Color(fmt.Sprintf(
|
// message is handled as part of the final init message
|
||||||
"[reset][green]\n"+strings.TrimSpace(successBackendSet), s.Backend.Type)))
|
if _, ok := b.(*cloud.Cloud); !ok {
|
||||||
|
m.Ui.Output(m.Colorize().Color(fmt.Sprintf(
|
||||||
|
"[reset][green]\n"+strings.TrimSpace(successBackendSet), s.Backend.Type)))
|
||||||
|
}
|
||||||
|
|
||||||
return b, diags
|
return b, diags
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue