1. HashiCorp Developer: Terraform Documentation
"Backend Configuration": The documentation explicitly states the required sequence. "To configure a backend
you add a backend block within the top-level terraform block. ... After configuring a backend
you must run terraform init. This command will validate and configure the backend
and in some cases will prompt for migration of existing state." This shows configuration precedes initialization.
Source: HashiCorp
Terraform Language Documentation
"Settings - Backends - Configuration"
https://developer.hashicorp.com/terraform/language/settings/backends/configuration
2. HashiCorp Developer: Terraform Documentation
"Command: init": This page details the actions of the init command. Under the "Backend Initialization" section
it explains: "During init
the root module's backend configuration is consulted. If a backend is configured
Terraform will verify that the configuration is syntactically valid...". This confirms that init consults an existing configuration
meaning the configuration must be defined before initialization can occur.
Source: HashiCorp
Terraform CLI Documentation
"Commands - init"
https://developer.hashicorp.com/terraform/cli/commands/init#backend-initialization