1. HashiCorp Terraform Documentation, "Backend Configuration":
Location: developer.hashicorp.com/terraform/language/settings/backends/configuration
Section: "Using a Backend Block"
Quote/Paraphrase: The documentation explicitly states, "To configure a backend, you add a nested backend block within the top-level terraform block... After adding a backend block to your configuration, you must run terraform init again to apply the change." This demonstrates that configuration precedes initialization.
2. HashiCorp Terraform Documentation, "Command: init":
Location: developer.hashicorp.com/terraform/cli/commands/init
Section: "Backend Initialization"
Quote/Paraphrase: This section explains that "During init, Terraform searches the configuration for a backend block..." This confirms that the init command acts upon a configuration that is already present in the files.
3. HashiCorp Learn, "Store and Manage State" Tutorial:
Location: developer.hashicorp.com/terraform/tutorials/state/store-manage
Section: "Configure the S3 backend"
Quote/Paraphrase: The tutorial guides the user to first add the backend "s3" block to their main.tf file (configuration step) and then run terraform init to migrate the state (initialization step). This practical example reinforces the correct order of operations.