@@ -27,10 +27,16 @@ import (
2727
2828var (
2929 // extension categories supported by the `init` command.
30- supportedCategories = options {
31- {Value : extension .EnvoyHTTPFilter .String (), DisplayText : "HTTP Filter" },
32- {Value : extension .EnvoyNetworkFilter .String (), DisplayText : "Network Filter" },
33- {Value : extension .EnvoyAccessLogger .String (), DisplayText : "Access Logger" },
30+ supportedCategories = map [string ]options {
31+ extension .LanguageRust .String (): {
32+ {Value : extension .EnvoyHTTPFilter .String (), DisplayText : "HTTP Filter" },
33+ {Value : extension .EnvoyNetworkFilter .String (), DisplayText : "Network Filter" },
34+ {Value : extension .EnvoyAccessLogger .String (), DisplayText : "Access Logger" },
35+ },
36+ extension .LanguageTinyGo .String (): {
37+ {Value : extension .EnvoyHTTPFilter .String (), DisplayText : "HTTP Filter" },
38+ {Value : extension .EnvoyNetworkFilter .String (), DisplayText : "Network Filter" },
39+ },
3440 }
3541 // programming languages supported by the `init` command.
3642 supportedLanguages = options {
@@ -119,9 +125,14 @@ Scaffold a new Envoy extension in a language of your choice.`,
119125 return scaffold .Scaffold (opts )
120126 },
121127 }
122- cmd .PersistentFlags ().StringVar (& params .Category .Value , "category" , "" , "Choose extension category. " + hintOneOf (supportedCategories .Values ()... ))
123- cmd .PersistentFlags ().StringVar (& params .Language .Value , "language" , "" , "Choose programming language. " + hintOneOf (supportedLanguages .Values ()... ))
124- cmd .PersistentFlags ().StringVar (& params .Name .Value , "name" , "" , `Choose extension name, e.g. "mycompany.filters.http.custom_metrics"` )
128+ cmd .PersistentFlags ().StringVar (& params .Language .Value ,
129+ "language" , "" ,
130+ "Choose programming language. " + hintOneOf (supportedLanguages .Values ()... ))
131+ cmd .PersistentFlags ().StringVar (& params .Category .Value ,
132+ "category" , "" ,
133+ "Choose extension category. " + hintOneOf (supportedCategories [params .Language .Value ].Values ()... ))
134+ cmd .PersistentFlags ().StringVar (& params .Name .Value ,
135+ "name" , "" , `Choose extension name, e.g. "mycompany.filters.http.custom_metrics"` )
125136 return cmd
126137}
127138
0 commit comments