@@ -34,6 +34,7 @@ var templateFS embed.FS
3434
3535type srv struct {
3636 namespace string
37+ version string
3738 client kubernetes.Interface
3839 dynClient dynamic.Interface
3940}
5253)
5354
5455// Start builds Kubernetes clients and starts the HTTP server on the given port.
55- func Start (port int , namespace string , kubeconfig string ) error {
56+ func Start (port int , namespace string , kubeconfig string , version string ) error {
5657 config , err := buildConfig (kubeconfig )
5758 if err != nil {
5859 return fmt .Errorf ("failed to build kubeconfig: %w" , err )
@@ -68,7 +69,7 @@ func Start(port int, namespace string, kubeconfig string) error {
6869 return fmt .Errorf ("failed to create dynamic client: %w" , err )
6970 }
7071
71- s := & srv {namespace : namespace , client : client , dynClient : dynClient }
72+ s := & srv {namespace : namespace , version : version , client : client , dynClient : dynClient }
7273
7374 mux := http .NewServeMux ()
7475 mux .HandleFunc ("/" , s .handleIndex )
@@ -119,8 +120,9 @@ func (s *srv) handleIndex(w http.ResponseWriter, r *http.Request) {
119120 http .Error (w , "template not found" , http .StatusInternalServerError )
120121 return
121122 }
123+ content := strings .ReplaceAll (string (data ), "__APP_VERSION__" , s .version )
122124 w .Header ().Set ("Content-Type" , "text/html; charset=utf-8" )
123- w .Write (data )
125+ w .Write ([] byte ( content ) )
124126}
125127
126128func (s * srv ) handleIngresses (w http.ResponseWriter , r * http.Request ) {
0 commit comments