Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions cmd/aliases.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import (
"fmt"
"github.com/elasticpath/epcc-cli/external/aliases"
"github.com/elasticpath/epcc-cli/external/completion"
"github.com/elasticpath/epcc-cli/external/profiles"
"github.com/elasticpath/epcc-cli/external/resources"
"github.com/spf13/cobra"
"os"
Expand Down Expand Up @@ -62,8 +61,7 @@ var aliasClearCmd = &cobra.Command{
Use: "clear",
Short: "clear all aliases",
RunE: func(cmd *cobra.Command, args []string) error {
profileDirectory := profiles.GetProfileDirectory()
os.RemoveAll(profileDirectory)
return nil
aliasDataDirectory := aliases.GetAliasDataDirectory()
return os.RemoveAll(aliasDataDirectory)
},
}
22 changes: 17 additions & 5 deletions external/aliases/aliases.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import (
"gopkg.in/yaml.v3"
"io/ioutil"
"os"
"path/filepath"
"strconv"
"strings"
"sync"
Expand All @@ -18,9 +19,20 @@ import (
// however, we should use file locking in the OS to stop multiple concurrent invocations.
var filelock = sync.Mutex{}

func GetAliasesForJsonApiType(jsonApiType string) map[string]string {
func GetAliasDataDirectory() string {
profileDirectory := profiles.GetProfileDataDirectory()
aliasFile := getDirectoryForJsonApiType(profileDirectory, jsonApiType)
profileDataDirectory := filepath.FromSlash(profileDirectory + "/aliases/")

//built in check if dir exists
if err := os.MkdirAll(profileDataDirectory, 0700); err != nil {
log.Errorf("could not make directory")
}

return profileDataDirectory
}
func GetAliasesForJsonApiType(jsonApiType string) map[string]string {
profileDirectory := GetAliasDataDirectory()
aliasFile := getAliasFileForJsonApiType(profileDirectory, jsonApiType)

aliasMap := map[string]string{}

Expand Down Expand Up @@ -59,7 +71,7 @@ func SaveAliasesForResources(jsonTxt string) {

log.Tracef("All aliases: %s", results)

profileDirectory := profiles.GetProfileDataDirectory()
profileDirectory := GetAliasDataDirectory()
for resourceType, aliases := range results {
saveAliasesForResource(profileDirectory, resourceType, aliases)
}
Expand All @@ -71,7 +83,7 @@ func saveAliasesForResource(profileDirectory string, jsonApiType string, aliases
filelock.Lock()
defer filelock.Unlock()

aliasFile := getDirectoryForJsonApiType(profileDirectory, jsonApiType)
aliasFile := getAliasFileForJsonApiType(profileDirectory, jsonApiType)
data, err := ioutil.ReadFile(aliasFile)
if err != nil {
log.Debugf("Could not read %s, error %s", aliasFile, err)
Expand Down Expand Up @@ -123,7 +135,7 @@ func saveAliasesForResource(profileDirectory string, jsonApiType string, aliases
}
}

func getDirectoryForJsonApiType(profileDirectory string, resourceType string) string {
func getAliasFileForJsonApiType(profileDirectory string, resourceType string) string {
aliasFile := fmt.Sprintf("%s/aliases_%s.yml", profileDirectory, resourceType)
return aliasFile
}
Expand Down