Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ListKeyVaultsGenerator = &model.Generator{ Id: uuid.New(), Script: "az keyvault list -o json", PostProcess: func(s string) []model.TermSuggestion { suggestions := []model.TermSuggestion{} vaults := []azListKeyvaultsResponse{} if err := json.Unmarshal([]byte(s), &vaults); err != nil { slog.Error("unable to load list keyvault response", slog.String("error", err.Error())) return suggestions } for _, vault := range vaults { if vault.VaultName == nil { continue } suggestions = append(suggestions, model.TermSuggestion{ Name: `"` + *vault.VaultName + `"`, Description: "Azure Key Vault", }) } return suggestions }, }
View Source
var ListKeyVaultsKeysGenerator = &model.Generator{ Id: uuid.New(), SkipCache: true, Function: func(cmdTokens []string) []model.TermSuggestion { suggestions := []model.TermSuggestion{} var vaultName *string = nil for idx, token := range cmdTokens { if strings.TrimSpace(token) == "--vault-name" && idx+1 < len(cmdTokens) { vaultName = &cmdTokens[idx+1] } } if vaultName == nil { return suggestions } output, err := exec.Command("az", fmt.Sprintf("keyvault key list --vault-name %s -o json", *vaultName)).Output() if err != nil { slog.Error("unable to request list keys", slog.String("error", err.Error())) return suggestions } keys := []azListKeyvaultKeysResponse{} if err := json.Unmarshal([]byte(output), &keys); err != nil { slog.Error("unable to load list keys response", slog.String("error", err.Error())) return suggestions } for _, key := range keys { if key.KeyName == nil { continue } suggestions = append(suggestions, model.TermSuggestion{ Name: `"` + *key.KeyName + `"`, Description: "Azure Key Vault", }) } return suggestions }, }
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.