Orchestrator Function: vCenter VAPI Plugin Content Library Build

by Simon Sparks · January 17, 2026

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

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

Filename: vCenterVAPIService.ts

Function ContentLibraryBuild

private ContentLibraryBuild(objVAPIClient: VAPIClient, strContentLibraryName: string, strDatastoreID: string): string {
    let objVAPIContentLibraryStorageBacking: com_vmware_content_library_storage__backing = new com_vmware_content_library_storage__backing();
    objVAPIContentLibraryStorageBacking.type = com_vmware_content_library_storage__backing_type.DATASTORE;
    objVAPIContentLibraryStorageBacking.datastore_id = strDatastoreID;

    let arrVAPIContentLibraryStorageBacking: com_vmware_content_library_storage__backing[] = [];
    arrVAPIContentLibraryStorageBacking.push(objVAPIContentLibraryStorageBacking);

    let objVAPIContentLibraryOptimizationInfo: com_vmware_content_library_optimization__info = new com_vmware_content_library_optimization__info();
    objVAPIContentLibraryOptimizationInfo.optimize_remote_publishing = true;

    let objVAPIContentLibraryPublishInfo: com_vmware_content_library_publish__info = new com_vmware_content_library_publish__info();
    objVAPIContentLibraryPublishInfo.authentication_method = com_vmware_content_library_publish__info_authentication__method.NONE;
    objVAPIContentLibraryPublishInfo.persist_json_enabled = false;
    objVAPIContentLibraryPublishInfo.published = true;
    // objVAPIContentLibraryPublishInfo.current_password = "";
    // objVAPIContentLibraryPublishInfo.password = "";
    // objVAPIContentLibraryPublishInfo.publish_url = "";
    // objVAPIContentLibraryPublishInfo.user_name = "";

    let objVAPIContentLibraryModel: com_vmware_content_library__model = new com_vmware_content_library__model();
    objVAPIContentLibraryModel.storage_backings = arrVAPIContentLibraryStorageBacking;
    objVAPIContentLibraryModel.optimization_info = objVAPIContentLibraryOptimizationInfo;
    objVAPIContentLibraryModel.publish_info = objVAPIContentLibraryPublishInfo;
    objVAPIContentLibraryModel.type = com_vmware_content_library__model_library__type.LOCAL;
    objVAPIContentLibraryModel.name = strContentLibraryName;
    objVAPIContentLibraryModel.description = strContentLibraryName;

    let strClientToken: string = System.nextUUID();

    let objVAPIContentLibraryLocal: com_vmware_content_local__library = new com_vmware_content_local__library(objVAPIClient);

    let strVAPIContentLibrary: string = objVAPIContentLibraryLocal.create(strClientToken, objVAPIContentLibraryModel);

    return strVAPIContentLibrary;
}

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like