func getOldAgentPath()

in main/utils.go [73:117]


func getOldAgentPath(lg ExtensionLogger) (string, error) {
	// get the current path of the extension
	currentPath, err := os.Getwd()
	lg.event("Current path: " + currentPath)
	if err != nil {
		lg.eventError("failed to get current working directory path", err)
		return "", err
	}

	// get the directory of the current extension and read the files in it
	dir := filepath.Dir(currentPath)
	lg.event("Current Directory: " + dir)
	files, err := ioutil.ReadDir(dir)
	if err != nil {
		lg.eventError("could not read files in directory", err)
		return "", err
	}

	// get the two extensions in the directory
	var extensionDirs []string
	var matches bool
	for _, f := range files {
		matches, err = regexp.MatchString(ExtensionDirRegex, f.Name())
		if matches {
			extensionDirs = append(extensionDirs, f.Name())
		}
	}

	lg.event("All the extension directories found")
	for _, d := range extensionDirs {
		lg.event("dir: " + d)
	}

	// get the versions and compare them
	extension, err := parseAndCompareExtensionVersions(lg, extensionDirs)
	if err != nil {
		lg.eventError("failed to compare extension versions", err)
	}

	// get old agent path
	oldAgent := filepath.Join(dir, extension, UnzipAgentDir, AgentName)
	lg.event("Old agent path: " + oldAgent)

	return oldAgent, nil
}