summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.lua2
-rw-r--r--script/config/env.lua55
2 files changed, 57 insertions, 0 deletions
diff --git a/main.lua b/main.lua
index 8ecfd472..5dfbab36 100644
--- a/main.lua
+++ b/main.lua
@@ -2,6 +2,8 @@ local fs = require 'bee.filesystem'
local util = require 'utility'
local version = require 'version'
+require 'config.env'
+
local function getValue(value)
if value == 'true' or value == nil then
value = true
diff --git a/script/config/env.lua b/script/config/env.lua
new file mode 100644
index 00000000..163ee404
--- /dev/null
+++ b/script/config/env.lua
@@ -0,0 +1,55 @@
+-- Handles loading environment arguments
+
+---ENV args are defined here.
+---- `name` is the ENV arg name
+---- `key` is the value used to index `_G` for setting the argument
+---@type { name: string, key: string }[]
+local vars = {
+ {
+ name = "LLS_CHECK_LEVEL",
+ key = "CHECKLEVEL",
+ },
+ {
+ name = "LLS_CHECK_PATH",
+ key = "CHECK",
+ },
+ {
+ name = "LLS_CONFIG_PATH",
+ key = "CONFIGPATH"
+ },
+ {
+ name = "LLS_DOC_OUT_PATH",
+ key = "DOC_OUT_PATH",
+ },
+ {
+ name = "LLS_DOC_PATH",
+ key = "DOC",
+ },
+ {
+ name = "LLS_FORCE_ACCEPT_WORKSPACE",
+ key = "FORCE_ACCEPT_WORKSPACE"
+ },
+ {
+ name = "LLS_LOCALE",
+ key = "LOCALE",
+ },
+ {
+ name = "LLS_LOG_LEVEL",
+ key = "LOGLEVEL",
+ },
+ {
+ name = "LLS_LOG_PATH",
+ key = "LOGPATH",
+ },
+ {
+ name = "LLS_META_PATH",
+ key = "METAPATH"
+ }
+}
+
+for _, var in ipairs(vars) do
+ local value = os.getenv(var.name)
+ if value then
+ _G[var.key] = value
+ end
+end