@@ -17,6 +17,7 @@ import (
17
17
"go.jetpack.io/devbox/internal/devbox"
18
18
"go.jetpack.io/devbox/internal/devbox/devopt"
19
19
"go.jetpack.io/devbox/internal/redact"
20
+ "go.jetpack.io/devbox/internal/ux"
20
21
)
21
22
22
23
type runCmdFlags struct {
@@ -122,13 +123,22 @@ func runScriptCmd(cmd *cobra.Command, args []string, flags runCmdFlags) error {
122
123
return redact .Errorf ("error reading devbox.json: %w" , err )
123
124
}
124
125
126
+ onStaleState := func () {
127
+ ux .FHidableWarning (
128
+ ctx ,
129
+ cmd .ErrOrStderr (),
130
+ devbox .StateOutOfDateMessage ,
131
+ "with --recompute=true" ,
132
+ )
133
+ }
134
+
125
135
envOpts := devopt.EnvOptions {
126
- OmitNixEnv : flags .omitNixEnv ,
127
- Pure : flags .pure ,
128
- RecomputeEnv : & devopt.RecomputeEnvOpts {
129
- Disabled : ! flags .recomputeEnv ,
130
- StateOutOfDateMessage : fmt .Sprintf (devbox .StateOutOfDateMessage , "with --recompute=true" ),
136
+ Hooks : devopt.EnvLifecycleHooks {
137
+ OnSkipRecomputeDespiteStaleState : onStaleState ,
131
138
},
139
+ OmitNixEnv : flags .omitNixEnv ,
140
+ Pure : flags .pure ,
141
+ SkipRecomputeEnv : ! flags .recomputeEnv ,
132
142
}
133
143
if err := box .RunScript (ctx , envOpts , script , scriptArgs ); err != nil {
134
144
return redact .Errorf ("error running script %q in Devbox: %w" , script , err )
0 commit comments