MCPcopy Create free account
hub / github.com/OctopusDeploy/cli / PromptMissing

Function PromptMissing

pkg/cmd/tenant/variables/update/update.go:331–422  ·  view source on GitHub ↗
(opts *UpdateOptions)

Source from the content-addressed store, hash-verified

329}
330
331func PromptMissing(opts *UpdateOptions) error {
332 var tenant *tenants.Tenant
333 var err error
334 if opts.Tenant.Value == "" {
335 tenant, err = selectors.Select(opts.Ask, "You have not specified a Tenant. Please select one:", opts.GetAllTenantsCallback, func(tenant *tenants.Tenant) string {
336 return tenant.Name
337 })
338 if err != nil {
339 return err
340 }
341
342 opts.Tenant.Value = tenant.Name
343 } else {
344 tenant, err = opts.GetTenantCallback(opts.Tenant.Value)
345 if err != nil {
346 return err
347 }
348 }
349
350 var variableType = ""
351 if opts.LibraryVariableSet.Value != "" {
352 variableType = VariableOwnerTypeCommon
353 } else if opts.Project.Value != "" {
354 variableType = VariableOwnerTypeProject
355 } else {
356 selectedOption, err := selectors.SelectOptions(opts.Ask, "Which type of variable do you want to update?", getVariableTypeOptions)
357 if err != nil {
358 return err
359 }
360 variableType = selectedOption.Value
361 }
362
363 var template *actiontemplates.ActionTemplateParameter
364
365 switch variableType {
366 case VariableOwnerTypeCommon:
367 variableResponse, err := opts.GetTenantCommonVariables(tenant, true)
368 var allVariables = append(variableResponse.Variables, variableResponse.MissingVariables...)
369
370 if err != nil {
371 return err
372 }
373
374 if opts.LibraryVariableSet.Value == "" || opts.Name.Value == "" {
375 selectedVariable, err := promptForVariable(opts, &allVariables, findPossibleCommonVariables)
376 if err != nil {
377 return err
378 }
379 opts.LibraryVariableSet.Value = selectedVariable.Owner
380 }
381
382 err = PromptForEnvironments(opts)
383 if err != nil {
384 return err
385 }
386
387 template, err = getCommonVariableTemplate(opts, &allVariables)
388 case VariableOwnerTypeProject:

Calls 7

SelectFunction · 0.92
SelectOptionsFunction · 0.92
PromptForEnvironmentsFunction · 0.85
promptForVariableFunction · 0.70