public ListCertificates ( Microsoft.Azure.Commands.Batch.Models.ListCertificateOptions options ) : IEnumerable |
||
options | Microsoft.Azure.Commands.Batch.Models.ListCertificateOptions | The options to use when querying for certificates. |
return | IEnumerable |
/// <summary> /// Deletes a certificate. /// </summary> public static void WaitForCertificateToFailDeletion(BatchController controller, BatchAccountContext context, string thumbprintAlgorithm, string thumbprint) { RequestInterceptor interceptor = CreateHttpRecordingInterceptor(); BatchClientBehavior[] behaviors = new BatchClientBehavior[] { interceptor }; BatchClient client = new BatchClient(controller.BatchManagementClient, controller.ResourceManagementClient); ListCertificateOptions parameters = new ListCertificateOptions(context, behaviors) { ThumbprintAlgorithm = BatchTestHelpers.TestCertificateAlgorithm, Thumbprint = thumbprint }; PSCertificate cert = client.ListCertificates(parameters).First(); DateTime timeout = DateTime.Now.AddMinutes(2); while (cert.State != CertificateState.DeleteFailed) { if (DateTime.Now > timeout) { throw new TimeoutException("Timed out waiting for failed certificate deletion"); } Sleep(10000); cert = client.ListCertificates(parameters).First(); } }
/// <summary> /// Adds a test certificate for use in Scenario tests. Returns the thumbprint of the cert. /// </summary> public static string AddTestCertificate(BatchController controller, BatchAccountContext context, string filePath) { RequestInterceptor interceptor = CreateHttpRecordingInterceptor(); BatchClientBehavior[] behaviors = new BatchClientBehavior[] { interceptor }; BatchClient client = new BatchClient(controller.BatchManagementClient, controller.ResourceManagementClient); X509Certificate2 cert = new X509Certificate2(filePath); ListCertificateOptions getParameters = new ListCertificateOptions(context, behaviors) { ThumbprintAlgorithm = BatchTestHelpers.TestCertificateAlgorithm, Thumbprint = cert.Thumbprint, Select = "thumbprint,state" }; try { PSCertificate existingCert = client.ListCertificates(getParameters).FirstOrDefault(); DateTime start = DateTime.Now; DateTime end = start.AddMinutes(5); // Cert might still be deleting from other tests, so we wait for the delete to finish. while (existingCert != null && existingCert.State == CertificateState.Deleting) { if (DateTime.Now > end) { throw new TimeoutException("Timed out waiting for existing cert to be deleted."); } Sleep(5000); existingCert = client.ListCertificates(getParameters).FirstOrDefault(); } } catch (AggregateException ex) { foreach (Exception inner in ex.InnerExceptions) { BatchException batchEx = inner as BatchException; // When the cert doesn't exist, we get a 404 error. For all other errors, throw. if (batchEx == null || !batchEx.Message.Contains("CertificateNotFound")) { throw; } } } NewCertificateParameters parameters = new NewCertificateParameters(context, null, cert.RawData, behaviors); client.AddCertificate(parameters); return(cert.Thumbprint); }
/// <summary> /// Adds a test certificate for use in Scenario tests. Returns the thumbprint of the cert. /// </summary> public static string AddTestCertificate(BatchController controller, BatchAccountContext context, string filePath) { BatchClient client = new BatchClient(controller.BatchManagementClient, controller.ResourceManagementClient); X509Certificate2 cert = new X509Certificate2(filePath); ListCertificateOptions getParameters = new ListCertificateOptions(context) { ThumbprintAlgorithm = BatchTestHelpers.TestCertificateAlgorithm, Thumbprint = cert.Thumbprint, Select = "thumbprint,state" }; try { PSCertificate existingCert = client.ListCertificates(getParameters).FirstOrDefault(); DateTime start = DateTime.Now; TimeSpan timeout = GetTimeout(TimeSpan.FromMinutes(5)); DateTime end = start.Add(timeout); // Cert might still be deleting from other tests, so we wait for the delete to finish. while (existingCert != null && existingCert.State == CertificateState.Deleting) { if (DateTime.Now > end) { throw new TimeoutException("Timed out waiting for existing cert to be deleted."); } Sleep(5000); existingCert = client.ListCertificates(getParameters).FirstOrDefault(); } } catch (BatchException ex) { // When the cert doesn't exist, we get a 404 error. For all other errors, throw. if (ex == null || !ex.Message.Contains("NotFound")) { throw; } } NewCertificateParameters parameters = new NewCertificateParameters( context, null, cert.RawData, PSCertificateKind.Cer); client.AddCertificate(parameters); return(cert.Thumbprint); }
/// <summary> /// Adds a test certificate for use in Scenario tests. Returns the thumbprint of the cert. /// </summary> public static string AddTestCertificate(BatchController controller, BatchAccountContext context, string filePath) { BatchClient client = new BatchClient(controller.BatchManagementClient, controller.ResourceManagementClient); X509Certificate2 cert = new X509Certificate2(filePath); ListCertificateOptions getParameters = new ListCertificateOptions(context) { ThumbprintAlgorithm = BatchTestHelpers.TestCertificateAlgorithm, Thumbprint = cert.Thumbprint, Select = "thumbprint,state" }; try { PSCertificate existingCert = client.ListCertificates(getParameters).FirstOrDefault(); DateTime start = DateTime.Now; DateTime end = start.AddMinutes(5); // Cert might still be deleting from other tests, so we wait for the delete to finish. while (existingCert != null && existingCert.State == CertificateState.Deleting) { if (DateTime.Now > end) { throw new TimeoutException("Timed out waiting for existing cert to be deleted."); } Sleep(5000); existingCert = client.ListCertificates(getParameters).FirstOrDefault(); } } catch (AggregateException ex) { foreach (Exception inner in ex.InnerExceptions) { BatchException batchEx = inner as BatchException; // When the cert doesn't exist, we get a 404 error. For all other errors, throw. if (batchEx == null || !batchEx.Message.Contains("CertificateNotFound")) { throw; } } } NewCertificateParameters parameters = new NewCertificateParameters(context, null, cert.RawData); client.AddCertificate(parameters); return cert.Thumbprint; }
/// <summary> /// Deletes a certificate. /// </summary> public static void WaitForCertificateToFailDeletion(BatchController controller, BatchAccountContext context, string thumbprintAlgorithm, string thumbprint) { BatchClient client = new BatchClient(controller.BatchManagementClient, controller.ResourceManagementClient); ListCertificateOptions parameters = new ListCertificateOptions(context) { ThumbprintAlgorithm = BatchTestHelpers.TestCertificateAlgorithm, Thumbprint = thumbprint }; PSCertificate cert = client.ListCertificates(parameters).First(); DateTime timeout = DateTime.Now.AddMinutes(2); while (cert.State != CertificateState.DeleteFailed) { if (DateTime.Now > timeout) { throw new TimeoutException("Timed out waiting for failed certificate deletion"); } Sleep(10000); cert = client.ListCertificates(parameters).First(); } }