feat: support cmd: loading api keys for google search APIs (#1532)

refactor environment loading logic into Utils and use it for existing
provider loading, and web search where appropriate.
This commit is contained in:
adasauce
2025-03-09 04:01:49 -03:00
committed by GitHub
parent 868c136574
commit 02fb470140
4 changed files with 70 additions and 53 deletions

View File

@@ -298,7 +298,7 @@ function M.web_search(opts, on_log)
local search_engine = Config.web_search_engine.providers[provider_type]
if search_engine == nil then return nil, "No search engine found: " .. provider_type end
if search_engine.api_key_name == "" then return nil, "No API key provided" end
local api_key = os.getenv(search_engine.api_key_name)
local api_key = Utils.environment.parse(search_engine.api_key_name)
if api_key == nil or api_key == "" then
return nil, "Environment variable " .. search_engine.api_key_name .. " is not set"
end
@@ -350,7 +350,7 @@ function M.web_search(opts, on_log)
local jsn = vim.json.decode(resp.body)
return search_engine.format_response_body(jsn)
elseif provider_type == "google" then
local engine_id = os.getenv(search_engine.engine_id_name)
local engine_id = Utils.environment.parse(search_engine.engine_id_name)
if engine_id == nil or engine_id == "" then
return nil, "Environment variable " .. search_engine.engine_id_name .. " is not set"
end