# Functions
DefaultHTTPConfig returns a base configuration for HTTP clients with default values.
DefaultRestyConfig returns a default configuration for the Resty HTTP client, extending the base HTTP configuration.
GetBoolValue retrieves a boolean value from a nested struct based on a dot-separated path.
GetPRTempPath constructs the path to the temporary folder for a pull request based on the VCS URL, namespace, and repository name.
GetRepositoryPath constructs the path to a repository based on the VCS URL and repository namespace.
GetScanioHome returns the Scanio home directory from the configuration.
GetScanioMode returns the Scanio mode from the configuration.
GetScanioPluginsHome returns the Scanio plugins directory from the configuration.
GetScanioProjectsHome returns the Scanio projects directory from the configuration.
GetScanioResultsHome returns the Scanio results directory from the configuration.
GetScanioTempHome returns the Scanio temporary directory from the configuration.
IsCI returns true if the Scanio mode is set to "CI", indicating a continuous integration environment.
LoadConfig reads a YAML config file and decodes it into a Config struct.
SetThen returns the first value if it is set; otherwise, it returns the default value.
SetThenPtr returns the dereferenced value if the pointer is not nil; otherwise, it returns the default value.
ValidateConfig checks if the global configurations have valid values.
ValidateGitConfig checks if the Git configurations have valid values.
ValidateHTTPConfig checks if the HTTP configurations have valid values.
ValidateScanioConfig checks if the Scanio configurations have valid values.
# Structs
BaseHTTPConfig holds common HTTP client configuration settings.
BitbucketPlugin holds configuration specific to the Bitbucket plugin.
CodeQLPlugin holds configuration specific to the CodeQL plugin.
TODO: fix issue with sending pointer to plugins which are not sharing address space with the core by serializing json Config holds configuration settings parsed from a YAML config file.
GitClient configures settings for Git operations.
GithubPlugin holds configuration specific to the Github plugin.
GitlabPlugin holds configuration specific to the Gitlab plugin.
HTTPClient configures settings for the HTTP client used within the application.
Logger configures the hclog logging aspects of the application.
Proxy defines the parameters to set up proxy settings for HTTP connections.
RestyHTTPClientConfig holds additional configuration settings for the Resty HTTP client.
Scanio holds configuration specific to the Scanio application.
TLSClientConfig configures the TLS aspects of HTTP connections.