Skip to content

Commit 7a34b9d

Browse files
committed
Created configuration functions to obtain data dir and downloads dir
1 parent ad5e91e commit 7a34b9d

File tree

7 files changed

+21
-12
lines changed

7 files changed

+21
-12
lines changed

Diff for: arduino/cores/packagemanager/package_manager_test.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ func TestFindToolsRequiredForBoard(t *testing.T) {
224224
pmb := packagemanager.NewBuilder(
225225
dataDir1,
226226
configuration.PackagesDir(configuration.Settings),
227-
paths.New(configuration.Settings.GetString("directories.Downloads")),
227+
configuration.DownloadsDir(configuration.Settings),
228228
dataDir1,
229229
"test",
230230
)

Diff for: cli/cache/clean.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ func initCleanCommand() *cobra.Command {
4040
func runCleanCommand(cmd *cobra.Command, args []string) {
4141
logrus.Info("Executing `arduino-cli cache clean`")
4242

43-
cachePath := configuration.Settings.GetString("directories.Downloads")
44-
err := os.RemoveAll(cachePath)
43+
cachePath := configuration.DownloadsDir(configuration.Settings)
44+
err := cachePath.RemoveAll()
4545
if err != nil {
4646
feedback.Errorf(tr("Error cleaning caches: %v"), err)
4747
os.Exit(errorcodes.ErrGeneric)

Diff for: cli/cli.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ func preRun(cmd *cobra.Command, args []string) {
158158
configFile := configuration.Settings.ConfigFileUsed()
159159

160160
// initialize inventory
161-
err := inventory.Init(configuration.Settings.GetString("directories.Data"))
161+
err := inventory.Init(configuration.DataDir(configuration.Settings).String())
162162
if err != nil {
163163
feedback.Errorf("Error: %v", err)
164164
os.Exit(errorcodes.ErrBadArgument)

Diff for: cli/core/search.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ import (
3434
"github.com/arduino/arduino-cli/configuration"
3535
rpc "github.com/arduino/arduino-cli/rpc/cc/arduino/cli/commands/v1"
3636
"github.com/arduino/arduino-cli/table"
37-
"github.com/arduino/go-paths-helper"
3837
"github.com/sirupsen/logrus"
3938
"github.com/spf13/cobra"
4039
)
@@ -130,7 +129,7 @@ func (sr searchResults) String() string {
130129
// of 24 hours is used.
131130
// Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
132131
func indexesNeedUpdating(duration string) bool {
133-
indexpath := paths.New(configuration.Settings.GetString("directories.Data"))
132+
indexpath := configuration.DataDir(configuration.Settings)
134133

135134
now := time.Now()
136135
modTimeThreshold, err := time.ParseDuration(duration)

Diff for: cli/instance/instance.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ func InitWithProfile(instance *rpc.Instance, profileName string, sketchPath *pat
125125
// This ideally is only executed the first time the CLI is run.
126126
func FirstUpdate(instance *rpc.Instance) error {
127127
// Gets the data directory to verify if library_index.json and package_index.json exist
128-
dataDir := paths.New(configuration.Settings.GetString("directories.data"))
128+
dataDir := configuration.DataDir(configuration.Settings)
129129

130130
libraryIndex := dataDir.Join("library_index.json")
131131
packageIndex := dataDir.Join("package_index.json")

Diff for: commands/instances.go

+3-3
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ func Create(req *rpc.CreateRequest, extraUserAgent ...string) (*rpc.CreateRespon
149149
instance := &CoreInstance{}
150150

151151
// Setup downloads directory
152-
downloadsDir := paths.New(configuration.Settings.GetString("directories.Downloads"))
152+
downloadsDir := configuration.DownloadsDir(configuration.Settings)
153153
if downloadsDir.NotExist() {
154154
err := downloadsDir.MkdirAll()
155155
if err != nil {
@@ -158,7 +158,7 @@ func Create(req *rpc.CreateRequest, extraUserAgent ...string) (*rpc.CreateRespon
158158
}
159159

160160
// Setup data directory
161-
dataDir := paths.New(configuration.Settings.GetString("directories.Data"))
161+
dataDir := configuration.DataDir(configuration.Settings)
162162
packagesDir := configuration.PackagesDir(configuration.Settings)
163163
if packagesDir.NotExist() {
164164
err := packagesDir.MkdirAll()
@@ -497,7 +497,7 @@ func UpdateIndex(ctx context.Context, req *rpc.UpdateIndexRequest, downloadCB rp
497497
return nil, &arduino.InvalidInstanceError{}
498498
}
499499

500-
indexpath := paths.New(configuration.Settings.GetString("directories.Data"))
500+
indexpath := configuration.DataDir(configuration.Settings)
501501

502502
urls := []string{globals.DefaultIndexURL}
503503
urls = append(urls, configuration.Settings.GetStringSlice("board_manager.additional_urls")...)

Diff for: configuration/directories.go

+12-2
Original file line numberDiff line numberDiff line change
@@ -61,12 +61,22 @@ func LibrariesDir(settings *viper.Viper) *paths.Path {
6161

6262
// PackagesDir returns the full path to the packages folder
6363
func PackagesDir(settings *viper.Viper) *paths.Path {
64-
return paths.New(settings.GetString("directories.Data")).Join("packages")
64+
return DataDir(settings).Join("packages")
6565
}
6666

6767
// ProfilesCacheDir returns the full path to the profiles cache directory
6868
// (it contains all the platforms and libraries used to compile a sketch
6969
// using profiles)
7070
func ProfilesCacheDir(settings *viper.Viper) *paths.Path {
71-
return paths.New(settings.GetString("directories.Data")).Join("internal")
71+
return DataDir(settings).Join("internal")
72+
}
73+
74+
// DataDir returns the full path to the data directory
75+
func DataDir(settings *viper.Viper) *paths.Path {
76+
return paths.New(settings.GetString("directories.Data"))
77+
}
78+
79+
// DownloadsDir returns the full path to the download cache directory
80+
func DownloadsDir(settings *viper.Viper) *paths.Path {
81+
return paths.New(settings.GetString("directories.Downloads"))
7282
}

0 commit comments

Comments
 (0)