github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/store/tiltfiles/args.go (about) 1 package tiltfiles 2 3 import ( 4 "context" 5 6 "k8s.io/apimachinery/pkg/types" 7 "sigs.k8s.io/controller-runtime/pkg/client" 8 9 "github.com/tilt-dev/tilt/internal/controllers/apicmp" 10 "github.com/tilt-dev/tilt/pkg/apis/core/v1alpha1" 11 "github.com/tilt-dev/tilt/pkg/model" 12 ) 13 14 func SetTiltfileArgs(ctx context.Context, client client.Client, args []string) error { 15 nn := types.NamespacedName{Name: model.MainTiltfileManifestName.String()} 16 var tf v1alpha1.Tiltfile 17 err := client.Get(ctx, nn, &tf) 18 if err != nil { 19 return err 20 } 21 22 if apicmp.DeepEqual(tf.Spec.Args, args) { 23 return nil 24 } 25 26 update := tf.DeepCopy() 27 update.Spec.Args = args 28 err = client.Update(ctx, update) 29 if err != nil { 30 return err 31 } 32 33 return nil 34 }