MCPcopy Index your code
hub / github.com/jetify-com/devbox / secretsInitFunc

Function secretsInitFunc

internal/boxcli/secrets.go:225–256  ·  view source on GitHub ↗
(
	cmd *cobra.Command,
	flags secretsInitCmdFlags,
	secretsFlags *secretsFlags,
)

Source from the content-addressed store, hash-verified

223}
224
225func secretsInitFunc(
226 cmd *cobra.Command,
227 flags secretsInitCmdFlags,
228 secretsFlags *secretsFlags,
229) error {
230 ctx := cmd.Context()
231 box, err := devbox.Open(&devopt.Opts{
232 Dir: secretsFlags.config.path,
233 Stderr: cmd.ErrOrStderr(),
234 })
235 if err != nil {
236 return errors.WithStack(err)
237 }
238
239 // devbox.Secrets() by default assumes project is initialized (and shows
240 // error if not). So we use UninitializedSecrets() here instead.
241 secrets := box.UninitializedSecrets(ctx)
242
243 if _, err := secrets.ProjectConfig(); err == nil &&
244 !box.Config().IsEnvsecEnabled() {
245 // Handle edge case where directory is already set up, but devbox.json is
246 // not configured to use jetpack-cloud.
247 ux.Finfof(
248 cmd.ErrOrStderr(),
249 "Secrets already initialized. Adding to devbox config.\n",
250 )
251 } else if err := secrets.NewProject(ctx, flags.force); err != nil {
252 return errors.WithStack(err)
253 }
254 box.Config().Root.SetStringField("EnvFrom", "jetpack-cloud")
255 return box.Config().Root.SaveTo(box.ProjectDir())
256}

Callers 1

secretsInitCmdFunction · 0.85

Calls 8

OpenFunction · 0.92
FinfofFunction · 0.92
UninitializedSecretsMethod · 0.80
SetStringFieldMethod · 0.80
SaveToMethod · 0.80
ConfigMethod · 0.65
ProjectDirMethod · 0.65
IsEnvsecEnabledMethod · 0.45

Tested by

no test coverage detected