MCPcopy Create free account
hub / github.com/jetify-com/devbox / runGenerateDirenvCmd

Function runGenerateDirenvCmd

internal/boxcli/generate.go:281–312  ·  view source on GitHub ↗
(cmd *cobra.Command, flags *generateCmdFlags)

Source from the content-addressed store, hash-verified

279}
280
281func runGenerateDirenvCmd(cmd *cobra.Command, flags *generateCmdFlags) error {
282 // --print-envrc is used within the .envrc file and therefore doesn't make sense to also
283 // use it with --envrc-dir, which specifies a directory where the .envrc file should be generated.
284 if flags.printEnvrcContent && flags.envrcDir != "" {
285 return usererr.New(
286 "Cannot use --print-envrc with --envrc-dir. " +
287 "Use --envrc-dir to specify the directory where the .envrc file should be generated.")
288 }
289
290 if flags.printEnvrcContent {
291 return devbox.PrintEnvrcContent(
292 cmd.OutOrStdout(), devopt.EnvFlags(flags.envFlag), flags.config.path)
293 }
294
295 box, err := devbox.Open(&devopt.Opts{
296 Dir: flags.config.path,
297 Environment: flags.config.environment,
298 Stderr: cmd.ErrOrStderr(),
299 })
300 if err != nil {
301 return errors.WithStack(err)
302 }
303
304 generateEnvrcOpts := devopt.EnvrcOpts{
305 EnvFlags: devopt.EnvFlags(flags.envFlag),
306 Force: flags.force,
307 EnvrcDir: flags.envrcDir,
308 ConfigDir: flags.config.path,
309 }
310
311 return box.GenerateEnvrcFile(cmd.Context(), generateEnvrcOpts)
312}

Callers 1

direnvCmdFunction · 0.85

Calls 5

NewFunction · 0.92
PrintEnvrcContentFunction · 0.92
EnvFlagsStruct · 0.92
OpenFunction · 0.92
GenerateEnvrcFileMethod · 0.80

Tested by

no test coverage detected