@splitsoftware/splitio
Version:
18 lines (17 loc) • 903 B
JavaScript
import osFunction from 'os';
import { address } from '../../utils/ip';
import { UNKNOWN, NA, CONSUMER_MODE } from '@splitsoftware/splitio-commons/esm/utils/constants';
export function validateRuntime(settings) {
var isIPAddressesEnabled = settings.core.IPAddressesEnabled === true;
var isConsumerMode = settings.mode === CONSUMER_MODE;
// If the values are not available, default to false (for standalone) or "unknown" (for consumer mode, to be used on Redis keys)
var ip = address() || (isConsumerMode ? UNKNOWN : false);
var hostname = osFunction.hostname() || (isConsumerMode ? UNKNOWN : false);
if (!isIPAddressesEnabled) { // If IPAddresses setting is not enabled, set as false (for standalone) or "NA" (for consumer mode, to be used on Redis keys)
ip = hostname = isConsumerMode ? NA : false;
}
return {
ip: ip,
hostname: hostname
};
}