Skip to content

Misc UI improvements #1084

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
May 29, 2020
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
11 changes: 3 additions & 8 deletions cli/cmd/cluster.go
Original file line number Diff line number Diff line change
Expand Up @@ -220,7 +220,7 @@ var _configureCmd = &cobra.Command{
exit.Error(err)
}

cachedClusterConfig := refreshCachedClusterConfig(awsCreds, _flagClusterDisallowPrompt)
cachedClusterConfig := refreshCachedClusterConfig(awsCreds, accessConfig, _flagClusterDisallowPrompt)

clusterConfig, err := getConfigureClusterConfig(cachedClusterConfig, awsCreds, _flagClusterDisallowPrompt)
if err != nil {
Expand Down Expand Up @@ -392,7 +392,7 @@ func cmdInfo(awsCreds AWSCredentials, accessConfig *clusterconfig.AccessConfig,
exit.Error(err)
}

clusterConfig := refreshCachedClusterConfig(awsCreds, disallowPrompt)
clusterConfig := refreshCachedClusterConfig(awsCreds, accessConfig, disallowPrompt)

out, exitCode, err := runManagerAccessCommand("/root/info.sh", *accessConfig, awsCreds, _flagClusterEnv)
if err != nil {
Expand Down Expand Up @@ -643,12 +643,7 @@ func cmdDebug(awsCreds AWSCredentials, accessConfig *clusterconfig.AccessConfig)
return
}

func refreshCachedClusterConfig(awsCreds AWSCredentials, disallowPrompt bool) clusterconfig.Config {
accessConfig, err := getClusterAccessConfig(disallowPrompt)
if err != nil {
exit.Error(err)
}

func refreshCachedClusterConfig(awsCreds AWSCredentials, accessConfig *clusterconfig.AccessConfig, disallowPrompt bool) clusterconfig.Config {
// add empty file if cached cluster doesn't exist so that the file output by manager container maintains current user permissions
cachedConfigPath := cachedClusterConfigPath(*accessConfig.ClusterName, *accessConfig.Region)
if !files.IsFile(cachedConfigPath) {
Expand Down
4 changes: 2 additions & 2 deletions cli/local/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -149,12 +149,12 @@ func DeleteAPI(apiName string, keepCache bool) error {
}
_, err := files.DeleteDirIfPresent(filepath.Join(_localWorkspaceDir, "apis", apiName))
if err != nil {
errList = append(errList, errors.Wrap(ErrorFailedToDeleteAPISpec(filepath.Join(_localWorkspaceDir, "apis", apiName)), err.Error()))
errList = append(errList, ErrorFailedToDeleteAPISpec(filepath.Join(_localWorkspaceDir, "apis", apiName), err))
}
} else if errors.GetKind(err) == ErrCortexVersionMismatch {
_, err := files.DeleteDirIfPresent(filepath.Join(_localWorkspaceDir, "apis", apiName))
if err != nil {
errList = append(errList, errors.Wrap(ErrorFailedToDeleteAPISpec(filepath.Join(_localWorkspaceDir, "apis", apiName)), err.Error()))
errList = append(errList, ErrorFailedToDeleteAPISpec(filepath.Join(_localWorkspaceDir, "apis", apiName), err))
}
} else {
// only add error if it isn't ErrCortexVersionMismatch
Expand Down
4 changes: 2 additions & 2 deletions cli/local/errors.go
Original file line number Diff line number Diff line change
Expand Up @@ -97,10 +97,10 @@ func ErrorInvalidTensorFlowZip() error {
})
}

func ErrorFailedToDeleteAPISpec(path string) error {
func ErrorFailedToDeleteAPISpec(path string, err error) error {
return errors.WithStack(&errors.Error{
Kind: ErrFailedToDeleteAPISpec,
Message: fmt.Sprintf("failed to delete api specification; run `sudo rm -rf %s` to cleanup", path),
Message: errors.Message(err) + fmt.Sprintf("\n\nfailed to delete api specification; run `sudo rm -rf %s` to clean up", path),
})
}

Expand Down
4 changes: 2 additions & 2 deletions pkg/lib/aws/errors.go
Original file line number Diff line number Diff line change
Expand Up @@ -81,14 +81,14 @@ func ErrorInvalidAWSCredentials(awsErr error) error {
func ErrorInvalidS3aPath(provided string) error {
return errors.WithStack(&errors.Error{
Kind: ErrInvalidS3aPath,
Message: fmt.Sprintf("%s is not a valid s3a path (e.g. s3a://cortex-examples/iris-classifier/tensorflow is a valid s3a path)", s.UserStr(provided)),
Message: fmt.Sprintf("%s is not a valid s3a path (e.g. s3a://cortex-examples/pytorch/iris-classifier/weights.pth is a valid s3a path)", s.UserStr(provided)),
})
}

func ErrorInvalidS3Path(provided string) error {
return errors.WithStack(&errors.Error{
Kind: ErrInvalidS3Path,
Message: fmt.Sprintf("%s is not a valid s3 path (e.g. s3://cortex-examples/iris-classifier/tensorflow is a valid s3 path)", s.UserStr(provided)),
Message: fmt.Sprintf("%s is not a valid s3 path (e.g. s3://cortex-examples/pytorch/iris-classifier/weights.pth is a valid s3 path)", s.UserStr(provided)),
})
}

Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/bool.go
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ func Bool(inter interface{}, v *BoolValidation) (bool, error) {
if v.TreatNullAsFalse {
return ValidateBool(false, v)
}
return false, ErrorCannotBeNull()
return false, ErrorCannotBeNull(v.Required)
}
casted, castOk := inter.(bool)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/bool_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ func ValidateBoolListMissing(v *BoolListValidation) ([]bool, error) {

func ValidateBoolListProvided(val []bool, v *BoolListValidation) ([]bool, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateBoolList(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/bool_ptr.go
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ func ValidateBoolPtrMissing(v *BoolPtrValidation) (*bool, error) {

func ValidateBoolPtrProvided(val *bool, v *BoolPtrValidation) (*bool, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return val, nil
}
10 changes: 8 additions & 2 deletions pkg/lib/configreader/errors.go
Original file line number Diff line number Diff line change
Expand Up @@ -289,10 +289,16 @@ func ErrorCannotSetStructField() error {
})
}

func ErrorCannotBeNull() error {
func ErrorCannotBeNull(isRequired bool) error {
msg := "cannot be null"

if !isRequired {
msg = "cannot be null (specify a value, or remove the key to use the default value)"
}

return errors.WithStack(&errors.Error{
Kind: ErrCannotBeNull,
Message: "cannot be null",
Message: msg,
})
}

Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/float32.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func Float32(inter interface{}, v *Float32Validation) (float32, error) {
if v.TreatNullAsZero {
return ValidateFloat32(0, v)
}
return 0, ErrorCannotBeNull()
return 0, ErrorCannotBeNull(v.Required)
}
casted, castOk := cast.InterfaceToFloat32(inter)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/float32_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ func ValidateFloat32ListMissing(v *Float32ListValidation) ([]float32, error) {

func ValidateFloat32ListProvided(val []float32, v *Float32ListValidation) ([]float32, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateFloat32List(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/float32_ptr.go
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ func ValidateFloat32PtrMissing(v *Float32PtrValidation) (*float32, error) {

func ValidateFloat32PtrProvided(val *float32, v *Float32PtrValidation) (*float32, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateFloat32Ptr(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/float64.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func Float64(inter interface{}, v *Float64Validation) (float64, error) {
if v.TreatNullAsZero {
return ValidateFloat64(0, v)
}
return 0, ErrorCannotBeNull()
return 0, ErrorCannotBeNull(v.Required)
}
casted, castOk := cast.InterfaceToFloat64(inter)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/float64_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ func ValidateFloat64ListMissing(v *Float64ListValidation) ([]float64, error) {

func ValidateFloat64ListProvided(val []float64, v *Float64ListValidation) ([]float64, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateFloat64List(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/float64_ptr.go
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ func ValidateFloat64PtrMissing(v *Float64PtrValidation) (*float64, error) {

func ValidateFloat64PtrProvided(val *float64, v *Float64PtrValidation) (*float64, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateFloat64Ptr(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func Int(inter interface{}, v *IntValidation) (int, error) {
if v.TreatNullAsZero {
return ValidateInt(0, v)
}
return 0, ErrorCannotBeNull()
return 0, ErrorCannotBeNull(v.Required)
}
casted, castOk := cast.InterfaceToInt(inter)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int32.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func Int32(inter interface{}, v *Int32Validation) (int32, error) {
if v.TreatNullAsZero {
return ValidateInt32(0, v)
}
return 0, ErrorCannotBeNull()
return 0, ErrorCannotBeNull(v.Required)
}
casted, castOk := cast.InterfaceToInt32(inter)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int32_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ func ValidateInt32ListMissing(v *Int32ListValidation) ([]int32, error) {

func ValidateInt32ListProvided(val []int32, v *Int32ListValidation) ([]int32, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInt32List(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int32_ptr.go
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ func ValidateInt32PtrMissing(v *Int32PtrValidation) (*int32, error) {

func ValidateInt32PtrProvdied(val *int32, v *Int32PtrValidation) (*int32, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInt32Ptr(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int64.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ func Int64(inter interface{}, v *Int64Validation) (int64, error) {
if v.TreatNullAsZero {
return ValidateInt64(0, v)
}
return 0, ErrorCannotBeNull()
return 0, ErrorCannotBeNull(v.Required)
}
casted, castOk := cast.InterfaceToInt64(inter)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int64_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ func ValidateInt64ListMissing(v *Int64ListValidation) ([]int64, error) {

func ValidateInt64ListProvided(val []int64, v *Int64ListValidation) ([]int64, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInt64List(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int64_ptr.go
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ func ValidateInt64PtrMissing(v *Int64PtrValidation) (*int64, error) {

func ValidateInt64PtrProvided(val *int64, v *Int64PtrValidation) (*int64, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInt64Ptr(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ func ValidateIntListMissing(v *IntListValidation) ([]int, error) {

func ValidateIntListProvided(val []int, v *IntListValidation) ([]int, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateIntList(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/int_ptr.go
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ func ValidateIntPtrMissing(v *IntPtrValidation) (*int, error) {

func ValidateIntPtrProvided(val *int, v *IntPtrValidation) (*int, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateIntPtr(val, v)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/interface.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ func ValidateInterfaceMissing(v *InterfaceValidation) (interface{}, error) {

func ValidateInterfaceProvided(val interface{}, v *InterfaceValidation) (interface{}, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInterface(val, v)
}
Expand Down
6 changes: 3 additions & 3 deletions pkg/lib/configreader/interface_map.go
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ type InterfaceMapValidation struct {
Default map[string]interface{}
AllowExplicitNull bool
AllowEmpty bool
ConvertNilToEmpty bool
ConvertNullToEmpty bool
ScalarsOnly bool
StringLeavesOnly bool
StringKeysOnly bool
Expand Down Expand Up @@ -70,7 +70,7 @@ func ValidateInterfaceMapMissing(v *InterfaceMapValidation) (map[string]interfac

func ValidateInterfaceMapProvided(val map[string]interface{}, v *InterfaceMapValidation) (map[string]interface{}, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInterfaceMap(val, v)
}
Expand Down Expand Up @@ -146,7 +146,7 @@ func validateInterfaceMap(val map[string]interface{}, v *InterfaceMapValidation)
return v.Validator(val)
}

if val == nil && v.ConvertNilToEmpty {
if val == nil && v.ConvertNullToEmpty {
val = make(map[string]interface{})
}

Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/interface_map_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ func ValidateInterfaceMapListMissing(v *InterfaceMapListValidation) ([]map[strin

func ValidateInterfaceMapListProvided(val []map[string]interface{}, v *InterfaceMapListValidation) ([]map[string]interface{}, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateInterfaceMapList(val, v)
}
Expand Down
10 changes: 5 additions & 5 deletions pkg/lib/configreader/reader.go
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ func Struct(dest interface{}, inter interface{}, v *StructValidation) []error {
inter = make(map[interface{}]interface{}, 0)
} else {
if !v.AllowExplicitNull {
return []error{ErrorCannotBeNull()}
return []error{ErrorCannotBeNull(v.Required)}
}
return nil
}
Expand Down Expand Up @@ -376,7 +376,7 @@ func StructList(dest interface{}, inter interface{}, v *StructListValidation) (i
inter = make([]interface{}, 0)
} else {
if !v.AllowExplicitNull {
return nil, []error{ErrorCannotBeNull()}
return nil, []error{ErrorCannotBeNull(v.Required)}
}
return nil, nil
}
Expand Down Expand Up @@ -413,7 +413,7 @@ func InterfaceStruct(inter interface{}, v *InterfaceStructValidation) (interface
inter = make(map[interface{}]interface{}, 0)
} else {
if !v.AllowExplicitNull {
return nil, []error{ErrorCannotBeNull()}
return nil, []error{ErrorCannotBeNull(v.Required)}
}
return nil, nil
}
Expand Down Expand Up @@ -496,7 +496,7 @@ func InterfaceStructList(dest interface{}, inter interface{}, v *InterfaceStruct
inter = make([]interface{}, 0)
} else {
if !v.AllowExplicitNull {
return nil, []error{ErrorCannotBeNull()}
return nil, []error{ErrorCannotBeNull(v.Required)}
}
return nil, nil
}
Expand Down Expand Up @@ -694,7 +694,7 @@ func StructFromStringMap(dest interface{}, strMap map[string]string, v *StructVa
strMap = make(map[string]string, 0)
} else {
if !v.AllowExplicitNull {
return []error{ErrorCannotBeNull()}
return []error{ErrorCannotBeNull(v.Required)}
}
return nil
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/string.go
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ func String(inter interface{}, v *StringValidation) (string, error) {
if v.TreatNullAsEmpty {
return ValidateString("", v)
}
return "", ErrorCannotBeNull()
return "", ErrorCannotBeNull(v.Required)
}
casted, castOk := inter.(string)
if !castOk {
Expand Down
2 changes: 1 addition & 1 deletion pkg/lib/configreader/string_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ func ValidateStringListMissing(v *StringListValidation) ([]string, error) {

func ValidateStringListProvided(val []string, v *StringListValidation) ([]string, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateStringList(val, v)
}
Expand Down
6 changes: 3 additions & 3 deletions pkg/lib/configreader/string_map.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ type StringMapValidation struct {
Default map[string]string
AllowExplicitNull bool
AllowEmpty bool
ConvertNilToEmpty bool
ConvertNullToEmpty bool
AllowCortexResources bool
RequireCortexResources bool
Validator func(map[string]string) (map[string]string, error)
Expand Down Expand Up @@ -65,7 +65,7 @@ func ValidateStringMapMissing(v *StringMapValidation) (map[string]string, error)

func ValidateStringMapProvided(val map[string]string, v *StringMapValidation) (map[string]string, error) {
if !v.AllowExplicitNull && val == nil {
return nil, ErrorCannotBeNull()
return nil, ErrorCannotBeNull(v.Required)
}
return validateStringMap(val, v)
}
Expand All @@ -91,7 +91,7 @@ func validateStringMap(val map[string]string, v *StringMapValidation) (map[strin
return v.Validator(val)
}

if val == nil && v.ConvertNilToEmpty {
if val == nil && v.ConvertNullToEmpty {
val = make(map[string]string)
}

Expand Down
Loading