MCPcopy Create free account
hub / github.com/github/gh-aw / getSecretRequirementsForEngine

Function getSecretRequirementsForEngine

pkg/cli/engine_secrets.go:58–96  ·  view source on GitHub ↗

getSecretRequirementsForEngine returns all secrets needed for a specific engine. This combines engine-specific secrets with optional system-level secrets.

(engine string, includeSystemSecrets bool, includeOptional bool)

Source from the content-addressed store, hash-verified

56// getSecretRequirementsForEngine returns all secrets needed for a specific engine.
57// This combines engine-specific secrets with optional system-level secrets.
58func getSecretRequirementsForEngine(engine string, includeSystemSecrets bool, includeOptional bool) []SecretRequirement {
59 engineSecretsLog.Printf("Getting required secrets for engine: %s (system=%v, optional=%v)", engine, includeSystemSecrets, includeOptional)
60
61 var requirements []SecretRequirement
62
63 // Add system-level secrets first if requested
64 if includeSystemSecrets {
65 for _, sys := range constants.SystemSecrets {
66 if sys.Optional && !includeOptional {
67 continue
68 }
69 requirements = append(requirements, SecretRequirement{
70 Name: sys.Name,
71 WhenNeeded: sys.WhenNeeded,
72 Description: sys.Description,
73 Optional: sys.Optional,
74 IsEngineSecret: false,
75 })
76 }
77 }
78
79 // Add engine-specific secret
80 opt := constants.GetEngineOption(engine)
81 if opt != nil {
82 requirements = append(requirements, SecretRequirement{
83 Name: opt.SecretName,
84 WhenNeeded: opt.WhenNeeded,
85 Description: getEngineSecretDescription(opt),
86 Optional: false,
87 AlternativeEnvVars: opt.AlternativeSecrets,
88 KeyURL: opt.KeyURL,
89 IsEngineSecret: true,
90 EngineName: engine,
91 })
92 }
93
94 engineSecretsLog.Printf("Returning %d secret requirements for engine %s", len(requirements), engine)
95 return requirements
96}
97
98// getEngineSecretDescription returns a detailed description for an engine secret
99func getEngineSecretDescription(opt *constants.EngineOption) string {

Calls 3

GetEngineOptionFunction · 0.92
PrintfMethod · 0.45