github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/store/tiltfiles/reducers.go (about) 1 package tiltfiles 2 3 import ( 4 "github.com/tilt-dev/tilt/internal/store" 5 "github.com/tilt-dev/tilt/pkg/apis/core/v1alpha1" 6 "github.com/tilt-dev/tilt/pkg/model" 7 ) 8 9 func HandleTiltfileUpsertAction(state *store.EngineState, action TiltfileUpsertAction) { 10 n := action.Tiltfile.Name 11 mn := model.ManifestName(n) 12 state.Tiltfiles[n] = action.Tiltfile 13 14 _, ok := state.TiltfileStates[mn] 15 if !ok { 16 state.TiltfileStates[mn] = &store.ManifestState{ 17 Name: mn, 18 BuildStatuses: make(map[model.TargetID]*store.BuildStatus), 19 DisableState: v1alpha1.DisableStateEnabled, 20 CurrentBuilds: make(map[string]model.BuildRecord), 21 } 22 } 23 24 if mn == model.MainTiltfileManifestName { 25 state.UserConfigState.Args = action.Tiltfile.Spec.Args 26 } 27 28 for _, x := range state.TiltfileDefinitionOrder { 29 if x == mn { 30 return // already in the order array 31 } 32 } 33 state.TiltfileDefinitionOrder = append(state.TiltfileDefinitionOrder, mn) 34 } 35 36 func HandleTiltfileDeleteAction(state *store.EngineState, action TiltfileDeleteAction) { 37 n := action.Name 38 mn := model.ManifestName(n) 39 delete(state.Tiltfiles, n) 40 delete(state.TiltfileStates, mn) 41 42 for i, x := range state.TiltfileDefinitionOrder { 43 if x == mn { 44 state.TiltfileDefinitionOrder = append( 45 state.TiltfileDefinitionOrder[:i], 46 state.TiltfileDefinitionOrder[i+1:]...) 47 return 48 } 49 } 50 }