diff options
Diffstat (limited to 'src/main.lib/RenewalExecutor.cs')
-rw-r--r-- | src/main.lib/RenewalExecutor.cs | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/main.lib/RenewalExecutor.cs b/src/main.lib/RenewalExecutor.cs index 94665dc..a38a6ba 100644 --- a/src/main.lib/RenewalExecutor.cs +++ b/src/main.lib/RenewalExecutor.cs @@ -97,25 +97,16 @@ namespace PKISharp.WACS } // Create the order - var client = es.Resolve<AcmeClient>(); + var orderManager = es.Resolve<OrderManager>(); var identifiers = target.GetHosts(false); - _log.Verbose("Creating certificate order for hosts: {identifiers}", identifiers); - var order = await client.CreateOrder(identifiers); - - // Check if the order is valid - if ((order.Payload.Status != AcmeClient.OrderReady && - order.Payload.Status != AcmeClient.OrderPending) || - order.Payload.Error != null) + var order = await orderManager.GetOrCreate(identifiers); + if (order == null) { - _log.Error("Failed to create order {url}: {detail}", order.OrderUrl, order.Payload.Error.Detail); return OnRenewFail(new Challenge() { Error = "Unable to create order" }); - } - else - { - _log.Verbose("Order {url} created", order.OrderUrl); } // Answer the challenges + var client = es.Resolve<AcmeClient>(); foreach (var authUrl in order.Payload.Authorizations) { // Get authorization details |