Skip to content

NCM Config Transfer

Tim Danner edited this page Feb 4, 2016 · 4 revisions

Config Transfers

Network Configuration Manager 7.4 (released in 2015) introduced a new API for managing configuration transfer operations, including downloading device configs, uploading device configs, and executing scripts on devices. This API consists of a set of verbs on the existing Cirrus.ConfigArchive entity type and a new NCM.TransferResults entity type you can query to check on the status of config transfer operations.

Cirrus.ConfigArchive

Verb: DownloadConfig

Download configs for multiple devices and store them in NCM database

Guid[] DownloadConfig(Guid[] nodeId, string configType)
  • nodeId – list of NCM node Ids to download configs from
  • ConfigType – Config Type to download
  • Return value- list of unique transfer ticket Ids per each node for requested operation

Verb: UploadConfig

Upload config changes for multiple devices

Guid[] UploadConfig(Guid[] nodeId, string configType, string ConfigText, bool RebootDevice)
  • nodeId – list of NCM node Ids to upload config changes to
  • ConfigType – Config Type to upload
  • ConfigText -- config text to upload
  • RebootDevice - flag indicating in reboot device should be performed after upload
  • Return value- list of unique transfer ticket Ids per each node for requested operation

Verb: ExecuteScript

Execute script on multiple devices

Guid[] ExecuteScript(Guid[] nodeId, string script)
  • nodeId – list of NCM node Ids to to exeucte script on
  • script – CLI script to execute
  • Return value- list of unique transfer ticket Ids per each node for requested operation

Verb: ClearTransfers

Clear transfer execution results from NCM_TransferResults table

void ClearTransfers(Guid[] TransferTickets)
  • TransferTickets - Ids of transfer tickets to cleanup

Verb: CancellTransfers

Cancel any ongoing or queued transfers

void CancellTransfers(Guid[] TransferTickets)
  • TransferTickets - Ids of transfer tickets to cancel

NCM.TransferResults

  • TransferID – unique ID of transfer ticket returned to client by one of transfer verbs
  • NodeId – NCM Node Id from NCM.NodeProperties entity
  • Action – enum type of transfer: Download =1, Upload = 2, Execute Script =3
  • RequestedConfigType - originally requested type of config to perform transfer. Value is NULL for execute script action
  • RequestedScript – Original script requested to execute on device. Value is NULL for download config action
  • RequestedReboot – flag indicating if reboot was requested. Value is populated only for upload config action
  • ConfigID – ID of newly downloaded by this transfer config in Cirrus.ConfigArchive table. Value if populated only for Config Download action
  • TransferProtocol – textual description of protocols combination used to perform transfer (for example Telnet – TFTP)
  • Status – enum status of transfer: Queued = 1 – means transfer is waiting for execution in queue, Transferring = 2 – means transfer is executing right now, Complete = 3, Error = 4
  • ErrorMessage – transfer error message. Value is populating only in case Status is equal to Error
  • DeviceOutput – store script execution results. Value is empty for download config action
  • DateTime – time when transfer was requested
  • UserName - name of user who requested transfer
Clone this wiki locally