Perl Example of Subscribing to a Published Library

This example is based on the code in the
publish_subscribe.pl
sample file.
This example uses the steps that are described in the Subscribe to a Content Library procedure.
For a complete and up-to-date version of the sample code, see the vSphere Automation SDK Perl samples at GitHub.
... # Create a StorageBacking instance on a local file system. my $library_backing = new Com::Vmware::Content::Library::StorageBacking(); $library_backing->set_type('type' => Com::Vmware::Content::Library::StorageBacking::Type::OTHER); $library_backing->set_storage_uri('storage_uri' => 'file:///mnt/nfs/cls-root'); # Create a new SubscriptionInfo object to describe the subscription behavior. my $subscription_info = new Com::Vmware::Content::Library::SubscriptionInfo(); $subscription_info->set_authentication_method('authentication_method' => Com::Vmware::Content::Library::SubscriptionInfo::AuthenticationMethod::BASIC); $subscription_info->set_user_name('user_name' => 'library-user'); $subscription_info->set_password('password' => 'password'); $subscription_info->set_subscription_url('subscription_url' => 'https://www.example.com/library_inventory/lib.json'); $subscription_info->set_automatic_sync_enabled('automatic_sync_enabled' => 1); $subscription_info->set_ssl_thumbprint('ssl_thumbprint' => '98:00:3F:C4:4E:B1:F3:F9:0D:70:47:48:E7:08:D1:A7:0E:DE:60:A5'); # Create a new LibraryModel object for the subscribed library. my $library_model = new Com::Vmware::Content::LibraryModel(); $library_model->set_type('type' => Com::Vmware::Content::LibraryModel::LibraryType::SUBSCRIBED); $library_model->set_name('name' => 'subscrLibrary'); # Attach the storage backing and the subscription info to the library model. $library_model->set_storage_backings('storage_backings' => [$library_backing]); $library_model->set_subscription_info('subscription_info' => $subscription_info); # Create the new library instance. my $subscription_token = ContentLibrary::Helpers::ClsApiHelper::generate_uuid(); my $my_library_id = $subscribed_library_service->create( 'client_token' => $subscription_token, 'create_spec' => $library_model );