Skip to content

Commit 26784d5

Browse files
feat: Env description handling (#5744)
* env description handling added * license handling
1 parent d816dee commit 26784d5

File tree

3 files changed

+13
-10
lines changed

3 files changed

+13
-10
lines changed

env_gen.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
| ACD_NAMESPACE | devtroncd | |
77
| ACD_PASSWORD | | |
88
| ACD_USERNAME | admin | |
9-
| APP | orchestrator | |
9+
| APP | orchestrator | Application name |
1010
| APP_SYNC_IMAGE | quay.io/devtron/chart-sync:1227622d-132-3775 | |
1111
| APP_SYNC_JOB_RESOURCES_OBJ | | |
1212
| APP_SYNC_SERVICE_ACCOUNT | chart-sync | |

fetchAllEnv/fetchAllEnv.go

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ type EnvField struct {
3636
}
3737

3838
const (
39-
envFieldTypeTag = "env"
40-
envDefaultFieldTypeTag = "envDefault"
41-
MARKDOWN_FILENAME = "env_gen.md"
39+
envFieldTypeTag = "env"
40+
envDefaultFieldTypeTag = "envDefault"
41+
envDescriptionFieldTypeTag = "envDescription"
42+
MARKDOWN_FILENAME = "env_gen.md"
4243
)
4344

4445
const MarkdownTemplate = `
@@ -97,14 +98,15 @@ func convertTagToStructTag(tag string) reflect.StructTag {
9798
return reflect.StructTag(strings.Split(tag, "`")[1])
9899
}
99100

100-
func getEnvKeyAndValue(tag reflect.StructTag) (string, string) {
101+
func getEnvKeyAndValue(tag reflect.StructTag) (string, string, string) {
101102
envKey := tag.Get(envFieldTypeTag)
102103
envValue := tag.Get(envDefaultFieldTypeTag)
104+
envDescription := tag.Get(envDescriptionFieldTypeTag)
103105
// check if there exist any value provided in env for this field
104106
if value, ok := os.LookupEnv(envKey); ok {
105107
envValue = value
106108
}
107-
return envKey, envValue
109+
return envKey, envValue, envDescription
108110
}
109111

110112
func processGoFile(filePath string, allFields *[]EnvField, uniqueKeys *map[string]bool) error {
@@ -122,13 +124,14 @@ func processGoFile(filePath string, allFields *[]EnvField, uniqueKeys *map[strin
122124
for _, field := range structType.Fields.List {
123125
if field.Tag != nil {
124126
strippedTags := convertTagToStructTag(field.Tag.Value)
125-
envKey, envValue := getEnvKeyAndValue(strippedTags)
127+
envKey, envValue, envDescription := getEnvKeyAndValue(strippedTags)
126128
if len(envKey) == 0 || (*uniqueKeys)[envKey] {
127129
continue
128130
}
129131
*allFields = append(*allFields, EnvField{
130-
Env: envKey,
131-
EnvValue: envValue,
132+
Env: envKey,
133+
EnvValue: envValue,
134+
EnvDescription: envDescription,
132135
})
133136
(*uniqueKeys)[envKey] = true
134137
}

pkg/sql/connection.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ type Config struct {
3333
Password string `env:"PG_PASSWORD" envDefault:"" secretData:"-"`
3434
Database string `env:"PG_DATABASE" envDefault:"orchestrator"`
3535
CasbinDatabase string `env:"CASBIN_DATABASE" envDefault:"casbin"`
36-
ApplicationName string `env:"APP" envDefault:"orchestrator"`
36+
ApplicationName string `env:"APP" envDefault:"orchestrator" envDescription:"Application name"`
3737
LogQuery bool `env:"PG_LOG_QUERY" envDefault:"true"`
3838
LogAllQuery bool `env:"PG_LOG_ALL_QUERY" envDefault:"false"`
3939
ExportPromMetrics bool `env:"PG_EXPORT_PROM_METRICS" envDefault:"false"`

0 commit comments

Comments
 (0)