github.com/grahambrereton-form3/tilt@v0.10.18/internal/tiltfile/features.go (about) 1 package tiltfile 2 3 import ( 4 "go.starlark.net/starlark" 5 6 "github.com/windmilleng/tilt/internal/feature" 7 ) 8 9 func (s *tiltfileState) enableFeature(thread *starlark.Thread, fn *starlark.Builtin, args starlark.Tuple, kwargs []starlark.Tuple) (starlark.Value, error) { 10 var flag string 11 err := s.unpackArgs(fn.Name(), args, kwargs, "msg", &flag) 12 if err != nil { 13 return nil, err 14 } 15 16 err = s.features.Set(flag, true) 17 if err != nil { 18 if _, ok := err.(feature.ObsoleteError); !ok { 19 return nil, err 20 } 21 s.warnings = append(s.warnings, err.Error()) 22 } 23 24 return starlark.None, nil 25 } 26 27 func (s *tiltfileState) disableFeature(thread *starlark.Thread, fn *starlark.Builtin, args starlark.Tuple, kwargs []starlark.Tuple) (starlark.Value, error) { 28 var flag string 29 err := s.unpackArgs(fn.Name(), args, kwargs, "msg", &flag) 30 if err != nil { 31 return nil, err 32 } 33 34 err = s.features.Set(flag, false) 35 if err != nil { 36 if _, ok := err.(feature.ObsoleteError); !ok { 37 return nil, err 38 } 39 s.warnings = append(s.warnings, err.Error()) 40 } 41 42 return starlark.None, nil 43 } 44 45 func (s *tiltfileState) disableSnapshots(thread *starlark.Thread, fn *starlark.Builtin, args starlark.Tuple, kwargs []starlark.Tuple) (starlark.Value, error) { 46 err := s.unpackArgs(fn.Name(), args, kwargs) 47 if err != nil { 48 return nil, err 49 } 50 51 err = s.features.Set(feature.Snapshots, false) 52 if err != nil { 53 if _, ok := err.(feature.ObsoleteError); !ok { 54 return nil, err 55 } 56 s.warnings = append(s.warnings, err.Error()) 57 } 58 59 return starlark.None, nil 60 }