Function: SRM Folder Mapping Create

by Simon Sparks · 4 February 2026

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

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

Filename: OrchestratorPluginSRMService.ts

Function: FolderMappingCreate

public FolderMappingCreate(strLocalFolder: string): boolean {
  let arrSRMSite: SRMSite[] = this.SRMSitesGet();

  let objSRMSiteLocal: SRMSite = arrSRMSite.find((objSRMSite: SRMSite): boolean => {
    return objSRMSite.name.toLowerCase() === strLocalFolder.toLowerCase();
  });

  let objSRMSiteRemote: SRMSite = arrSRMSite.find((objSRMSite: SRMSite): boolean => {
    return objSRMSite.name.toLowerCase() === strLocalFolder.toLowerCase();
  });

  let arrSRMLocalDatacenter: SRMLocalDatacenter[] = objSRMSiteLocal.getLocalDatacenters();

  let objSRMLocalDatacenter: SRMLocalDatacenter = arrSRMLocalDatacenter.find((objSRMLocalDatacenter: SRMLocalDatacenter): boolean => {
    return objSRMLocalDatacenter.morType === "Datacenter";
  });

  let arrSRMRemoteDatacenter: SRMRemoteDatacenter[] = objSRMSiteRemote.getLocalDatacenters();

  let objSRMRemoteDatacenter: SRMRemoteDatacenter = arrSRMRemoteDatacenter.find((objSRMLocalDatacenter: SRMLocalDatacenter): boolean => {
    return objSRMLocalDatacenter.morType === "Datacenter";
  });

  try {
    objSRMSiteLocal.addFolderMapping(objSRMLocalDatacenter, objSRMRemoteDatacenter);

    objSRMSiteRemote.addFolderMapping(objSRMLocalDatacenter, objSRMRemoteDatacenter);

    return true;
  }
  catch (objError) {
    return false;
  }
}

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like