You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.4 KiB

# Copyright (C) 2005-2025 Splunk Inc. All Rights Reserved.
import sys
from splunk.clilib.bundle_paths import make_splunkhome_path
sys.path.append(make_splunkhome_path(['etc', 'apps', 'SA-ITOA', 'lib']))
import itsi_path
from ITOA.setup_logging import getLogger
from .deploy_default_lookup_files import deployDefaultLookupFiles
class ITInstaller(object):
"""
Performs the various operations necessary to install ITSI
"""
@staticmethod
def doInstall( sessionKey=None, splunk_home=None, logger=None, force=False ):
# Compute the locations of the Splunk apps directory
splunk_app_dir = make_splunkhome_path(['etc', 'apps'])
# Setup a logger if none was provided
if logger is None:
# Get the handler
logger = getLogger(logger_name="itsi.install", logger_file="itsi_install.log")
# Log a message noting the ITSI install is starting
if logger:
logger.info("IT Service Intelligence install is starting, splunk_app_dir=%s" % (splunk_app_dir))
# Run the various operations, note we limit all actions to just the itsi app
logger.debug("Total path for installer: %s" % (splunk_app_dir))
deployDefaultLookupFiles( make_splunkhome_path(['etc', 'apps', 'itsi']), logger=logger)
# Log a message noting the ITSI install is done
if logger:
logger.info("ITSI install has completed")