File: //bin/fm-agent/fm_agent_noroot.py
#!/usr/bin/env python
import getpass
import os
import os.path
import sys
home = os.path.expanduser("~")
ACCEPTABLE_SYNC_DELAY = 20
AGG_URL = "rx.us01.fortimonitor.com"
BASE_CONFIG_DIR = os.path.join(home, "etc")
BASE_CUSTOM_PLUGIN_DIR = os.path.join(home, "share")
BASE_DATA_DIR = os.path.join(home, "lib")
BASE_LOG_DIR = os.path.join(home, "log")
BIN_DIR = os.path.join(home, "bin")
BRAND = "fm"
LIB_DIR = os.path.join(home, "lib")
PKG_DIR = "fm-agent"
STARTUP_TIMEOUT = 2 # In minutes
USER = getpass.getuser()
VERSION = "2025.4.5"
# Add the main dependency directory
sys.path.insert(0, os.path.join(home, "lib/dependencies"))
# Add platform/version-specific dependency directory if present
version = sys.version_info
sys.path.insert(
0,
os.path.join(
home, "lib/dependencies/%s/python%s.%s" % (sys.platform, version[0], version[1])
),
)
# Add the main agent code directory
sys.path.insert(0, os.path.join(home, "lib/library"))
from agent import Agent
if __name__ == "__main__":
agent = Agent(
BRAND,
AGG_URL,
VERSION,
USER,
BIN_DIR,
LIB_DIR,
PKG_DIR,
STARTUP_TIMEOUT,
BASE_CONFIG_DIR,
BASE_CUSTOM_PLUGIN_DIR,
BASE_DATA_DIR,
BASE_LOG_DIR,
ACCEPTABLE_SYNC_DELAY,
)
agent.main()