propagate test cache dir in cli integration tests (#634)

This commit is contained in:
Keepers 2022-08-23 11:13:07 -06:00 committed by GitHub
parent e8e4bf0914
commit 99908b914d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 2 deletions

View File

@ -57,7 +57,7 @@ func CorsoCommand() *cobra.Command {
func BuildCommandTree(cmd *cobra.Command) { func BuildCommandTree(cmd *cobra.Command) {
cmd.Flags().BoolP("version", "v", version, "current version info") cmd.Flags().BoolP("version", "v", version, "current version info")
cmd.PersistentPostRunE = config.InitFunc() cmd.PersistentPostRunE = config.InitFunc()
config.AddConfigFileFlag(cmd) config.AddConfigFlags(cmd)
print.AddOutputFlag(cmd) print.AddOutputFlag(cmd)
logger.AddLogLevelFlag(cmd) logger.AddLogLevelFlag(cmd)

View File

@ -32,7 +32,7 @@ const (
var configFilePath string var configFilePath string
// adds the persistent flag --config-file to the provided command. // adds the persistent flag --config-file to the provided command.
func AddConfigFileFlag(cmd *cobra.Command) { func AddConfigFlags(cmd *cobra.Command) {
fs := cmd.PersistentFlags() fs := cmd.PersistentFlags()
homeDir, err := os.UserHomeDir() homeDir, err := os.UserHomeDir()
if err != nil { if err != nil {

View File

@ -2,6 +2,7 @@ package config
import ( import (
"os" "os"
"path/filepath"
"github.com/pkg/errors" "github.com/pkg/errors"
"github.com/spf13/viper" "github.com/spf13/viper"
@ -80,6 +81,13 @@ func configureStorage(
cCfg := storage.CommonConfig{ cCfg := storage.CommonConfig{
Corso: corso, Corso: corso,
} }
// the following is a hack purely for integration testing.
// the value is not required, and if empty, kopia will default
// to its routine behavior
if t, ok := vpr.Get("corso-testing").(bool); t && ok {
dir, _ := filepath.Split(vpr.ConfigFileUsed())
cCfg.KopiaCfgDir = dir
}
// ensure required properties are present // ensure required properties are present
if err := utils.RequireProps(map[string]string{ if err := utils.RequireProps(map[string]string{

View File

@ -143,6 +143,7 @@ func MakeTempTestConfigClone(t *testing.T, overrides map[string]string) (*viper.
vpr.AddConfigPath(tDir) vpr.AddConfigPath(tDir)
vpr.SetConfigType(strings.TrimPrefix(ext, ".")) vpr.SetConfigType(strings.TrimPrefix(ext, "."))
vpr.SetConfigName(strings.TrimSuffix(fName, ext)) vpr.SetConfigName(strings.TrimSuffix(fName, ext))
vpr.Set("corso-testing", true)
for k, v := range cfg { for k, v := range cfg {
vpr.Set(k, v) vpr.Set(k, v)