github.com/argoproj/argo-cd/v3@v3.2.1/util/notification/expression/shared/appdetail.go (about) 1 package shared 2 3 import ( 4 "time" 5 6 "github.com/argoproj/argo-cd/v3/pkg/apis/application/v1alpha1" 7 8 "github.com/argoproj/argo-cd/v3/reposerver/apiclient" 9 ) 10 11 type CommitMetadata struct { 12 // Commit message 13 Message string 14 // Commit author 15 Author string 16 // Commit creation date 17 Date time.Time 18 // Associated tags 19 Tags []string 20 } 21 22 type AppDetail struct { 23 // AppDetail Type 24 Type string 25 // Helm details 26 Helm *CustomHelmAppSpec 27 // Kustomize details 28 Kustomize *apiclient.KustomizeAppSpec 29 // Directory details 30 Directory *apiclient.DirectoryAppSpec 31 } 32 33 type CustomHelmAppSpec struct { 34 HelmAppSpec apiclient.HelmAppSpec 35 HelmParameterOverrides []v1alpha1.HelmParameter 36 } 37 38 func (has CustomHelmAppSpec) GetParameterValueByName(name string) string { 39 // Check in overrides first 40 for i := range has.HelmParameterOverrides { 41 if has.HelmParameterOverrides[i].Name == name { 42 return has.HelmParameterOverrides[i].Value 43 } 44 } 45 46 for i := range has.HelmAppSpec.Parameters { 47 if has.HelmAppSpec.Parameters[i].Name == name { 48 return has.HelmAppSpec.Parameters[i].Value 49 } 50 } 51 return "" 52 } 53 54 func (has CustomHelmAppSpec) GetFileParameterPathByName(name string) string { 55 var path string 56 for i := range has.HelmAppSpec.FileParameters { 57 if has.HelmAppSpec.FileParameters[i].Name == name { 58 path = has.HelmAppSpec.FileParameters[i].Path 59 break 60 } 61 } 62 return path 63 }