diff --git a/internal/exec/shell_utils.go b/internal/exec/shell_utils.go index d7e4e7fcf..a6fd60fde 100644 --- a/internal/exec/shell_utils.go +++ b/internal/exec/shell_utils.go @@ -154,7 +154,7 @@ func execTerraformShellCommand( componentEnvList = append(componentEnvList, fmt.Sprintf("TF_CLI_ARGS_import=-var-file=%s", varFile)) componentEnvList = append(componentEnvList, fmt.Sprintf("TF_CLI_ARGS_destroy=-var-file=%s", varFile)) componentEnvList = append(componentEnvList, fmt.Sprintf("TF_CLI_ARGS_console=-var-file=%s", varFile)) - componentEnvList = append(componentEnvList, "PS1=atmos>") + componentEnvList = append(componentEnvList, fmt.Sprintf("PS1=[atmos:%s/%s]> ", stack, component)) u.LogDebug(cliConfig, "\nStarting a new interactive shell where you can execute all native Terraform commands (type 'exit' to go back)") u.LogDebug(cliConfig, fmt.Sprintf("Component: %s\n", component)) @@ -184,9 +184,15 @@ func execTerraformShellCommand( if len(shellCommand) == 0 { bashPath, err := exec.LookPath("bash") if err != nil { - return err + // Try fallback to sh if bash is not available + shPath, shErr := exec.LookPath("sh") + if shErr != nil { + return fmt.Errorf("no suitable shell found: %v", shErr) + } + shellCommand = shPath + } else { + shellCommand = bashPath } - shellCommand = bashPath } }