func rewriteHcl()

in upgradetest.go [180:209]


func rewriteHcl(moduleDir, newModuleSource string) error {
	entries, err := os.ReadDir(moduleDir)
	if err != nil {
		return err
	}
	for _, entry := range entries {
		if entry.IsDir() || !strings.HasSuffix(entry.Name(), ".tf") {
			continue
		}
		filePath := filepath.Clean(filepath.Join(moduleDir, entry.Name()))
		f, err := os.ReadFile(filePath)
		if err != nil {
			return err
		}
		tfCode := string(f)
		tfCode, err = tfmodredirector.RedirectModuleSource(tfCode, "../../", newModuleSource)
		if err != nil {
			return err
		}
		tfCode, err = tfmodredirector.RedirectModuleSource(tfCode, "../..", newModuleSource)
		if err != nil {
			return err
		}
		err = os.WriteFile(filePath, []byte(tfCode), 0600)
		if err != nil {
			return err
		}
	}
	return nil
}