The terraform plan command creates an execution plan, which lets you preview the changes that Terraform plans to make to your infrastructure. By default, when Terraform creates a plan it:
Reads the current state of any already-existing remote objects to make sure that the Terraform state is up-to-date.
Compares the current configuration to the prior state and noting any differences.
Proposes a set of change actions that should, if applied, make the remote objects match the configuration.
Note: this command does not deploy anything. Consider this is the read-only command
Allows user to review the action plan before executing anything
At this stage, authentication credentials are used to connect to your infrastructure, if required