160 Commits

Author SHA1 Message Date
Richard Körber
3edd0ab52a Use properties for pebble URI 2025-11-15 15:20:07 +01:00
Richard Körber
c8dd082b7a Simplify bammbamm IP evaluation in docker 2025-11-15 15:19:52 +01:00
Richard Körber
79a24be45d Update docker-maven-plugin 2025-11-15 15:19:20 +01:00
Richard Körber
47555b915c Remove Buypass provider
Reason: Buypass terminates its ACME service
2025-10-07 14:19:21 +02:00
Richard Körber
2ca2f4b264 Add Actalis support (fixes #173) 2025-08-13 20:48:16 +02:00
Richard Körber
ec726f6859 Fix IT for Pebble v2.8.0 2025-06-12 17:45:03 +02:00
Richard Körber
033f9701c0 Make some IT soft-fail 2025-05-25 15:44:18 +02:00
Richard Körber
b62709470e Replace new URL() with URI.create()
new URL() is deprecated starting Java 20
2025-05-18 10:19:40 +02:00
Richard Körber
29c6dc97a1 Extend timeout for ZeroSSL IT 2025-05-18 08:45:08 +02:00
Richard Körber
ce60dc9368 Remove all deprecated code 2025-04-26 13:36:31 +02:00
Richard Körber
c0d96e709e Add support for draft-ietf-acme-dns-account-label 2025-04-26 12:40:03 +02:00
Richard Körber
1069bcc2ce [maven-release-plugin] prepare for next development iteration 2025-02-18 06:14:11 +01:00
Richard Körber
9f07272180 [maven-release-plugin] prepare release v3.5.1 2025-02-18 06:14:11 +01:00
Richard Körber
8bb6560ff8 [maven-release-plugin] prepare for next development iteration 2025-01-26 14:49:45 +01:00
Richard Körber
008ffc968f [maven-release-plugin] prepare release v3.5.0 2025-01-26 14:49:44 +01:00
Richard Körber
6b0b0e68b6 Add IT for Pebble profile 2025-01-26 14:31:11 +01:00
Richard Körber
f6a3bd618b Fix Pebble IT after Pebble update 2025-01-26 11:42:48 +01:00
Richard Körber
6a24d85364 ZeroSSL supports ARI now 2024-10-20 09:34:26 +02:00
Richard Körber
87bbb9efbf Add Buypass provider 2024-09-22 16:54:17 +02:00
Richard Körber
beec5156c2 Add Google CA provider 2024-09-22 16:32:00 +02:00
Richard Körber
793bcd7ce1 [maven-release-plugin] prepare for next development iteration 2024-08-18 12:20:45 +02:00
Richard Körber
21751be264 [maven-release-plugin] prepare release v3.4.0 2024-08-18 12:20:45 +02:00
Richard Körber
b897dc277d Add new methods for status change busy waiting 2024-08-17 17:20:52 +02:00
Richard Körber
ae60431a79 Disable ssl.com staging unit tests
The ssl.com staging server's certificate seems to be unmonitored,
causing the acme4j build chain to break from time to time when their
certificate has expired. As this is blocking development, I have
decided to disable all related unit tests, and add a corresponding
note to the documentation.

The acme4j ssl.com provider is marked as experimental now, since it
is not fully covered by unit tests anymore.
2024-06-30 10:43:36 +02:00
Richard Körber
a85ff19cf8 [maven-release-plugin] prepare for next development iteration 2024-06-07 17:51:36 +02:00
Richard Körber
2bbe5c5815 [maven-release-plugin] prepare release v3.3.1 2024-06-07 17:51:35 +02:00
Richard Körber
514b188c69 Remove workaround for Pebble container 2024-06-07 17:30:47 +02:00
Richard Körber
f9768d1793 [maven-release-plugin] prepare for next development iteration 2024-05-15 16:02:32 +02:00
Richard Körber
feb3d59f7b [maven-release-plugin] prepare release v3.3.0 2024-05-15 16:02:32 +02:00
Richard Körber
57ec36054a Use latest Pebble docker image for integration tests
- Updated to the latest pebble and challtestsrv images
- Could not use the docker images as intended, because I found no way to
  let the docker-maven-plugin setup a network with fixed IP addresses.
  The original images are based on scratch, so getent is not present
  there. The only fix was to build own images based on alpine, and copy
  the apps from the original images. Ugly, but working.
- Fixed broken integration tests
- Fixed an old bug: DNS records were removed with two trailing full
  stops.
2024-03-19 22:16:35 +01:00
Richard Körber
97a6708db3 [maven-release-plugin] prepare for next development iteration 2024-03-11 17:28:06 +01:00
Richard Körber
565eab9fa4 [maven-release-plugin] prepare release v3.2.1 2024-03-11 17:28:06 +01:00
Richard Körber
65e6e28bff [maven-release-plugin] prepare for next development iteration 2024-02-28 18:02:55 +01:00
Richard Körber
c16d1a45cc [maven-release-plugin] prepare release v3.2.0 2024-02-28 18:02:55 +01:00
Richard Körber
908e11b152 Workaround for ssl.com metadata bug
ssl.com requires EAB for account creation, but the metadata's
"externalAccountRequired" property gives "false", indicating that no EAB
is used.

This fix patches the read directory's metadata if the ssl.com provider
is used.
2024-02-26 18:26:45 +01:00
Richard Körber
081e53f137 SSL.com: Add support for ECC and RSA mode 2024-02-26 18:26:45 +01:00
Richard Körber
c0b74bfc59 Add integration tests for the CA providers
These tests will fail if the directory URLs are changed, or if a
relevant part of the directory changes. If one of the tests should fail,
acme4j will need to be updated to the new directory URL or structure.
2024-02-26 18:26:45 +01:00
Richard Körber
f428f1be9c [maven-release-plugin] prepare for next development iteration 2023-11-15 07:06:11 +01:00
Richard Körber
86c2647ff0 [maven-release-plugin] prepare release v3.1.1 2023-11-15 07:06:11 +01:00
Richard Körber
a9bfc8b46e [maven-release-plugin] prepare for next development iteration 2023-10-11 07:20:24 +02:00
Richard Körber
04fe10c55b [maven-release-plugin] prepare release v3.1.0 2023-10-11 07:20:24 +02:00
Richard Körber
dd7c873750 [maven-release-plugin] prepare for next development iteration 2023-08-11 09:55:47 +02:00
Richard Körber
eea08053a2 [maven-release-plugin] prepare release v3.0.0 2023-08-11 09:55:46 +02:00
Richard Körber
e8b83d6423 Automatically generate CSR in Order class
With this change, it is not stricly required anymore to create the CSR
oneself. The Order class contains all information to generate a basic
CSR itself.
2023-05-19 10:20:35 +02:00
Richard Körber
16b02efe23 Merge acme4j-utils into acme4j-client
The separation of acme4j-client and acme4j-utils was a design decision
that should avoid BouncyCastle to be a hard dependency of acme4j-client.
Anyhow acme4j is not really usable without BouncyCastle, so acme4j-utils
is used in almost all projects anyway.

This merge allows to extend the client API with some nice methods that
will make it easier to use.
2023-05-19 09:58:08 +02:00
Richard Körber
5bbf1b5966 getCertificate() is not Optional
getCertificate() would only return Optional.empty() if it was invoked
before the order was finalized. In order to keep the API simple, that
state will now throw an IllegalStateException, and getCertificate()
directly returns a non-null Certificate now.
2023-05-06 17:29:16 +02:00
Richard Körber
1907545e5d Review all @Nullable return values
- Most methods now return an Optional instead of a null value
- Reviewed all Collection return values. They may now be empty, but
  never null.
2023-05-06 17:27:36 +02:00
Richard Körber
783fdde013 Use the java.net.http client
With this patch, the old HttpURLConnection client is replaced with
the new java.net.http client that was introduced in Java 11.
2023-04-24 21:16:07 +02:00
Richard Körber
0d55898379 Port codebase to Java 11 2023-04-23 13:13:27 +02:00
Richard Körber
41d9855bc0 Bump to v3.0.0, adhere to SemVer 2023-04-23 08:44:21 +02:00