boulder/wfe2
Daniel McCarney d7bfb542c0
Handle order finalization errors. (#3404)
This commit resolves the case where an error during finalization occurs.
Prior to this commit if an error (expected or otherwise) occurred after
setting an order to status processing at the start of order
finalization the order would be stuck processing forever.

The SA now has a `SetOrderError` RPC that can be used by the RA to
persist an error onto an order. The order status calculation can use
this error to decide if the order is invalid. The WFE is updated to
write the error to the order JSON when displaying the order information.

Prior to this commit the order protobuf had the error field as
a `[]byte`. It doesn't seem like this is the right decision, we have
a specific protobuf type for ProblemDetails and so this commit switches
the error field to use it. The conversion to/from `[]byte` is done with
the model by the SA.

An integration test is included that prior to this commit left an order
in a stuck processing state. With this commit the integration test
passes as expected.

Resolves https://github.com/letsencrypt/boulder/issues/3403
2018-02-07 16:34:07 -05:00
..
test Fix various WFE2 bugs. (#3292) 2017-12-19 13:13:29 -08:00
README.md Duplicate WFE to WFE2. (#2839) 2017-07-05 13:32:45 -07:00
stats.go ACME v2 Finalize order support (#3169) 2017-11-01 12:39:44 -07:00
verify.go Remove logging of Request/ResponseNonce. (#3421) 2018-02-06 10:17:12 -05:00
verify_test.go Remove logging of Request/ResponseNonce. (#3421) 2018-02-06 10:17:12 -05:00
wfe.go Handle order finalization errors. (#3404) 2018-02-07 16:34:07 -05:00
wfe_test.go Allow revocation of certificate by issuing account and add integration tests (#3390) 2018-01-29 13:23:20 -08:00

README.md

WFE v2

The wfe2 package is copied from the wfe package in order to implement the "ACME v2" API. This design choice was made to facilitate a clean separation between v1 and v2 code and to support running a separate API process on a different port alongside the v1 API process.