)]}'
{"helm-toolkit/templates/snippets/_keystone_openrc_env_vars.tpl":[{"author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"change_message_id":"5223e602490508a19ea789597b862b4e136400d3","unresolved":true,"context_lines":[{"line_number":96,"context_line":"{{- $identityOpenrc :\u003d dict -}}"},{"line_number":97,"context_line":"{{- if hasKey $envAll \"Values\" -}}"},{"line_number":98,"context_line":"{{- if hasKey $envAll.Values \"identity\" -}}"},{"line_number":99,"context_line":"{{- if hasKey $envAll.Values.identity \"openrc\" -}}"},{"line_number":100,"context_line":"{{- $identityOpenrc \u003d $envAll.Values.identity.openrc -}}"},{"line_number":101,"context_line":"{{- end -}}"},{"line_number":102,"context_line":"{{- end -}}"}],"source_content_type":"text/x-smarty","patch_set":2,"id":"8bc61691_749ad2bf","line":99,"updated":"2026-06-24 21:45:09.000000000","message":"there is a better helm function that allows to lookup for nested optional values https://helm.sh/docs/chart_template_guide/function_list/#dig","commit_id":"738fb63e2c39a761bf66250d4be86a66e999a349"},{"author":{"_account_id":37208,"name":"Marek Skrobacki","display_name":"Marek Skrobacki","email":"skrobul@skrobul.com","username":"skrobul"},"change_message_id":"a92f314fd5cb5e398621b321f44ec7e2679924d8","unresolved":true,"context_lines":[{"line_number":96,"context_line":"{{- $identityOpenrc :\u003d dict -}}"},{"line_number":97,"context_line":"{{- if hasKey $envAll \"Values\" -}}"},{"line_number":98,"context_line":"{{- if hasKey $envAll.Values \"identity\" -}}"},{"line_number":99,"context_line":"{{- if hasKey $envAll.Values.identity \"openrc\" -}}"},{"line_number":100,"context_line":"{{- $identityOpenrc \u003d $envAll.Values.identity.openrc -}}"},{"line_number":101,"context_line":"{{- end -}}"},{"line_number":102,"context_line":"{{- end -}}"}],"source_content_type":"text/x-smarty","patch_set":2,"id":"b7188dfb_73e8dc26","line":99,"in_reply_to":"8bc61691_749ad2bf","updated":"2026-06-25 11:10:05.000000000","message":"thanks for the review. The `dig` function requires a `map[string]interface{}` type, but `$envAll.Values` is of type `chartutil.Values` (Helm\u0027s internal Values type). Even though `chartutil.Values` is map-like, it\u0027s not the same concrete type, so `dig`\u0027s type assertion fails during render.\n\nSo I have reverted back to hasKey implementation, but at the same time I found that there are still some variables not being properly excluded in nova-bootstrap job. Need to investigate so mark this  change as WIP","commit_id":"738fb63e2c39a761bf66250d4be86a66e999a349"},{"author":{"_account_id":37208,"name":"Marek Skrobacki","display_name":"Marek Skrobacki","email":"skrobul@skrobul.com","username":"skrobul"},"change_message_id":"ff4ec909232b8a16ef3934cc294b59292888869b","unresolved":false,"context_lines":[{"line_number":96,"context_line":"{{- $identityOpenrc :\u003d dict -}}"},{"line_number":97,"context_line":"{{- if hasKey $envAll \"Values\" -}}"},{"line_number":98,"context_line":"{{- if hasKey $envAll.Values \"identity\" -}}"},{"line_number":99,"context_line":"{{- if hasKey $envAll.Values.identity \"openrc\" -}}"},{"line_number":100,"context_line":"{{- $identityOpenrc \u003d $envAll.Values.identity.openrc -}}"},{"line_number":101,"context_line":"{{- end -}}"},{"line_number":102,"context_line":"{{- end -}}"}],"source_content_type":"text/x-smarty","patch_set":2,"id":"4d85449b_29982ab2","line":99,"in_reply_to":"b7188dfb_73e8dc26","updated":"2026-06-25 13:29:43.000000000","message":"Turns out there was one more macro that had to be modified too. In my testing it all passes, but I\u0027m not sure if reusing the same variables in `_keystone_user_create_env_vars.tpl` is okay. If not, please let me know.","commit_id":"738fb63e2c39a761bf66250d4be86a66e999a349"}],"helm-toolkit/templates/snippets/_keystone_user_create_env_vars.tpl":[{"author":{"_account_id":3009,"name":"Vladimir Kozhukalov","email":"kozhukalov@gmail.com","username":"kozhukalov"},"change_message_id":"c18f0526622958a5e25e77be0d270bf090f496a7","unresolved":true,"context_lines":[{"line_number":66,"context_line":"{{- end -}}"},{"line_number":67,"context_line":"{{- end -}}"},{"line_number":68,"context_line":"{{- end -}}"},{"line_number":69,"context_line":"{{- $excludeVars :\u003d ($identityOpenrc.exclude_vars | default list) -}}"},{"line_number":70,"context_line":"{{- if hasKey . \"excludeVars\" -}}{{- $excludeVars \u003d .excludeVars -}}{{- end -}}"},{"line_number":71,"context_line":"{{- $extraVars :\u003d ($identityOpenrc.extra_vars | default list) -}}"},{"line_number":72,"context_line":"{{- if hasKey . \"extraVars\" -}}{{- $extraVars \u003d .extraVars -}}{{- end -}}"}],"source_content_type":"text/x-smarty","patch_set":5,"id":"d87717c7_f36ef562","line":69,"updated":"2026-06-26 21:52:55.000000000","message":"the template job-ks-user utilizes both keystone_openrc_env_vars and keystone_user_create_env_vars and extra vars will be duplicated. The K8s tolerates this and uses last-win rule, but probably this is not what we want.","commit_id":"2983e03d5eafa7a47e83045b9f0ef0ed4b166e32"}]}
