github.com/tilt-dev/tilt@v0.36.0/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/model"
     6  )
     7  
     8  func HandleTiltfileUpsertAction(state *store.EngineState, action TiltfileUpsertAction) {
     9  	n := action.Tiltfile.Name
    10  	mn := model.ManifestName(n)
    11  	state.Tiltfiles[n] = action.Tiltfile
    12  
    13  	_, ok := state.TiltfileStates[mn]
    14  	if !ok {
    15  		state.TiltfileStates[mn] = store.NewTiltfileManifestState(mn)
    16  	}
    17  
    18  	if mn == model.MainTiltfileManifestName {
    19  		state.UserConfigState.Args = action.Tiltfile.Spec.Args
    20  	}
    21  
    22  	for _, x := range state.TiltfileDefinitionOrder {
    23  		if x == mn {
    24  			return // already in the order array
    25  		}
    26  	}
    27  	state.TiltfileDefinitionOrder = append(state.TiltfileDefinitionOrder, mn)
    28  }
    29  
    30  func HandleTiltfileDeleteAction(state *store.EngineState, action TiltfileDeleteAction) {
    31  	n := action.Name
    32  	mn := model.ManifestName(n)
    33  	delete(state.Tiltfiles, n)
    34  	delete(state.TiltfileStates, mn)
    35  
    36  	for i, x := range state.TiltfileDefinitionOrder {
    37  		if x == mn {
    38  			state.TiltfileDefinitionOrder = append(
    39  				state.TiltfileDefinitionOrder[:i],
    40  				state.TiltfileDefinitionOrder[i+1:]...)
    41  			return
    42  		}
    43  	}
    44  }