in csharp/Microsoft.Azure.Databricks.Client.Sample/SampleProgram.Library.cs [56:95]
private static async Task TestInstallUninstallLibrary(DatabricksClient client, Library library, string clusterId)
{
Console.WriteLine("Installing library {0}", library);
await client.Libraries.Install(clusterId, new[] { library });
while (true)
{
var statuses = await client.Libraries.ClusterStatus(clusterId);
var targetLib = statuses.SingleOrDefault(status => status.Library.Equals(library));
if (targetLib == null)
{
Console.WriteLine("[{0:s}] Library {1} not found", DateTime.UtcNow, library);
break;
}
if (targetLib.Status == LibraryInstallStatus.INSTALLED)
{
Console.WriteLine("[{0:s}] Library {1} INSTALLED", DateTime.UtcNow, library);
break;
}
Console.WriteLine("[{0:s}] Library {1} status {2}", DateTime.UtcNow, library, targetLib.Status);
if (targetLib.Status == LibraryInstallStatus.FAILED)
{
break;
}
await Task.Delay(TimeSpan.FromSeconds(5));
}
Console.WriteLine("Uninstalling library {0}", library);
await client.Libraries.Uninstall(clusterId, new[] { library });
var s = await client.Libraries.ClusterStatus(clusterId);
var uninstalledLib = s.Single(status => status.Library.Equals(library));
Console.WriteLine("[{0:s}] Library {1} status {2}", DateTime.UtcNow, library, uninstalledLib.Status);
}