Function: Update a Host Record using the Infoblox Plugin

by Simon Sparks · 29 January 2026

To use this function add it to the class library file named InfobloxService.ts

GitHub Repository: https://github.com/SimonSparksUK/Orchestrator

Filename: InfobloxService.ts

Description: Orchestrator Function to update a host record using the Infoblox plugin

Function: UpdateRecordHost

public UpdateRecordHost(objIpamConnection: IpamConnection, strFQDN: string, strDnsView: string = "default", strNetworkView: string = "default", blnRestartIfNeeded: boolean = true, blnEnableDhcp?: boolean, blnEnableDns?: boolean, strHostname?: string, strIpAddress?: string, strMacAddress?: string, strIpAddressOld?: string, blnUpdateHostAddress?: boolean, arrAdditionalAliases?: string[]): void {
    let objIpamUpdateHostInfo: IpamUpdateHostInfo = new IpamUpdateHostInfo();
    if (blnEnableDhcp) {
        objIpamUpdateHostInfo.newEnableDhcp = blnEnableDhcp;
    }
    if (blnEnableDns) {
        objIpamUpdateHostInfo.newEnableDns = blnEnableDns;
    }
    if (strHostname) {
        objIpamUpdateHostInfo.newHostName = strHostname;
    }
    if (strIpAddress) {
        objIpamUpdateHostInfo.newIp = strIpAddress;
    }
    if (strMacAddress) {
        objIpamUpdateHostInfo.newMac = strMacAddress;
    }
    if (strIpAddressOld) {
        objIpamUpdateHostInfo.oldIp = strIpAddressOld;
    }
    if (blnUpdateHostAddress) {
        objIpamUpdateHostInfo.updateHostAddress = blnUpdateHostAddress;
    }
    if (arrAdditionalAliases) {
        objIpamUpdateHostInfo.additionalAliases = arrAdditionalAliases;
    }

    try {
        objIpamConnection.reconnect();
        objIpamConnection.configDefaultNetworkView = strNetworkView;
        objIpamConnection.configDefaultDnsView = strDnsView;

        let objIpamHostManager: IpamHostManager = objIpamConnection.getHostManager();

        let arrIpamHost: IpamHost[] = objIpamHostManager.findHostsByName(strFQDN, strDnsView);

        let objIpamHost: IpamHost = arrIpamHost.find((objIpamHost: IpamHost): boolean => {
            return objIpamHost.fqdn === strFQDN;
        });

        objIpamHostManager.updateHost(objIpamHost.reference, objIpamUpdateHostInfo, blnRestartIfNeeded);
    }
    catch (objException) {
        this.objLogger.info(objException);
    }
}

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like