939 Commits

Author SHA1 Message Date
Felix Fontein
04967efe26 Replace vendored certificates with self-created certificates of similar structure (#862)
* Create script to reproduce certs.

* Recreate the certificates and update the tests.

* Anonymize certificates.

* Make mostly reproducable by storing the private keys.

I've tried to hide the private keys so that 'security checkers' won't find them
and won't complain. Let's see whether that works...
2025-04-24 22:31:01 +02:00
Felix Fontein
dbff2a69e2 Remove FreeBSD 14.0 from CI. (#863)
In ansible-core it has been replaced with 14.1, but we're already testing against that.
Ref: 3546111f2d
2025-04-22 19:02:36 +02:00
Felix Fontein
d8773697de Adjust times. 2025-04-19 19:56:34 +02:00
Felix Fontein
046aeab5e2 Run extra sanity tests with nox. (#861) 2025-04-19 17:54:14 +02:00
Felix Fontein
a9d6e0048c Work around bug in ansible-core that censors mailto URIs. (#859) 2025-04-10 12:58:33 +02:00
Felix Fontein
a2d821f960 Migrate .reuse/dep5 to REUSE.toml. 2025-03-29 12:17:19 +01:00
Giorgos Drosos
b1451b3460 Skip openssh_cert test on Rocky Linux 9+ due to SHA-1 restrictions (#856)
* Make openssh_cert second algorithm tests compatible with Rocky

* Fix typo

* Merge conditions

Co-authored-by: Felix Fontein <felix@fontein.de>

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-03-25 20:30:28 +01:00
Felix Fontein
8dabbd8f94 Use shared unit test utils from community.internal_test_tools (#854)
* Use shared unit test utils from community.internal_test_tools.

* Make sure community.internal_test_tools is installed in CI.
2025-03-12 22:12:12 +01:00
Felix Fontein
a1669d490f CI: Remove usage of ubuntu-20.04, add FreeBSD 13.5 (#853)
* Switch from ubuntu-20.04 to ubuntu-latest for old Ansible versions.

* [TEMP] Change to trigger full CI.

* Add FreeBSD 13.5.
2025-03-12 07:24:02 +01:00
Felix Fontein
9ac42ffb11 The next expected release will be 2.27.0. 2025-03-11 20:35:14 +01:00
Felix Fontein
e58fe63dde Release 2.26.0. 2.26.0 2025-03-11 20:09:02 +01:00
Felix Fontein
0d1f260328 Prepare 2.26.0. 2025-03-10 21:53:06 +01:00
Florian Apolloner
ba55ba7381 openssl_pkcs12: Add support for certificate_content and other_certificates_content (#848)
* openssl_pkcs12: Add support for `certificate_content` and `other_certificates_content`

Co-authored-by: Felix Fontein <felix@fontein.de>

* Added minimal tests.

The tests are minimal because internally it always ends up with the
_content variants, so even when supplying a file most of the internal
code paths then use the content.

---------

Co-authored-by: Felix Fontein <felix@fontein.de>
2025-03-10 21:44:31 +01:00
Felix Fontein
260bdb1572 Improve tests (#852)
* Use no longer needed wrapper.

* Improve tests.
2025-03-08 10:48:34 +01:00
Felix Fontein
7d5ebad188 Group CI updates. 2025-03-03 19:00:29 +01:00
Felix Fontein
78d9fe5813 Add macOS 15.3. (#849) 2025-02-26 20:45:08 +01:00
Felix Fontein
a42e541326 Cleanup AZP config similarly to ansible-core did some years ago. (#846) 2025-02-10 22:52:24 +01:00
Felix Fontein
673b18d9a9 The next expected release will be 2.26.0. 2025-02-09 19:56:25 +01:00
Felix Fontein
2a99218162 Release 2.25.0. 2.25.0 2025-02-09 19:29:41 +01:00
Felix Fontein
e1763e22ae Prepare 2.25.0 release. 2025-02-09 14:25:42 +01:00
ilia-kats
2433fdab98 luks_device: allow passphrases to contain newlines (#844)
* luks_device: allow passphrases to contain newlines

This is useful when passing binary keyfiles from an ansible vault, as
it removes the restriction that the binary data cannot contain newlines.
The only exception is adding a new key to an existing container, as in
that case the two passphrases are separated by a new line.

* add integration tests and a changelog fragment

* attempt to also make luks_add_key work with passphrases containing
newlines

* use a deterministic method to generate keyfile 3, improve changelog
formatting

* add licence and copyright to keyfile3.txt to satisfy CI
2025-02-09 14:24:16 +01:00
Felix Fontein
cb6edf1a5f The next expected release will be 2.25.0. 2025-01-19 13:28:11 +01:00
Felix Fontein
3d4c5346c6 Release 2.24.0. 2.24.0 2025-01-19 13:03:31 +01:00
Felix Fontein
a8aa05ac4e Avoid reserved variable name 'order'. 2025-01-19 10:59:55 +01:00
Felix Fontein
0e122e5f56 Improve ACME profile support. 2025-01-19 10:55:26 +01:00
Felix Fontein
47ea1af180 Forgot to adjust warnings. 2025-01-19 10:47:24 +01:00
Felix Fontein
3951e6ceb4 Include cert ID in warning.
This prevents the warning to be not shown for different certificates
in the same playbook due to warning de-duplication.
2025-01-19 08:58:49 +01:00
Felix Fontein
bf70f8d717 Prepare 2.24.0. 2025-01-18 11:25:37 +01:00
Felix Fontein
214794d056 acme_certificate and acme_certificate_create_order: add order_creation_error_strategy and order_creation_max_retries options (#842)
* Provide error information.

* Add helper function for order creation retrying.

* Improve existing documentation.

* Document 'replaces' return value.

* Add order_creation_error_strategy and order_creation_max_retries options.

* Add changelog fragment.

* Fix authz deactivation for finalizing step.

* Fix profile handling on order creation.

* Improve existing tests.

* Add ARI and profile tests.

* Warn when 'replaces' is removed when retrying to create an order.
2025-01-18 10:51:10 +01:00
Felix Fontein
b9fa5b5193 Deprecate ansible-core < 2.17 and cryptography < 3.4. (#839) 2025-01-17 21:27:01 +00:00
Felix Fontein
5366b9e5ba Improve ACME tests; add acme_ari_info tests; use ARI and profiles features in acme_certificate tests (#841)
* Fix description.

* Add basic acme_ari_info test.

* Refactoring.

* Extend acme_certificate tests.
2025-01-14 23:49:24 +01:00
Felix Fontein
fd67767538 Move EOL'ed ansible-core 2.15 from AZP to GHA (#840)
* Move EOL'ed ansible-core 2.15 from AZP to GHA.

* CentOS 7 does not work in GHA.
2025-01-14 19:31:03 +01:00
Felix Fontein
ae35be3437 Adjust ARI tests to new Pebble (#837)
* Adjust ARI tests to new Pebble.

* Fix key size for certificates to 2048 on all systems.
2025-01-13 21:43:29 +01:00
Felix Fontein
01e7bf1f33 acme_certificate_renewal_info: add treat_parsing_error_as_non_existing option and existing and parsable return values (#838)
* Fix error reporting for OpenSSL backend: raise BackendExceptions instead of directly failing the module.

* Add treat_parsing_error_as_non_existing option and existing and parsable return values.
2025-01-12 21:42:24 +01:00
Felix Fontein
49354f2121 Add new ACME modules for working with orders. (#757) 2025-01-12 17:10:58 +01:00
Felix Fontein
072318466e Update ACME tests (#836)
* Restrict remaining days to also work with short-lived profiles.

* Adjust boolean cases.

* Fix spelling error.

* Use larger key size for TLS-ALPN test certificate.
2025-01-12 13:59:08 +01:00
Felix Fontein
248250514f Fix profile implementation. 2025-01-12 13:57:17 +01:00
Felix Fontein
2419e6c6ad Implement profile option. (#835) 2025-01-12 10:24:24 +01:00
Felix Fontein
029e009db1 CI: Add Fedora 41, Alpine 3.21, RHEL 9.5, FreeBSD 14.2 to CI for devel (#834)
* Add Fedora 41, Alpine 3.21, RHEL 9.5, FreeBSD 14.2 to CI for devel.

* Fedora 41 also doesn't allow SHA-1 apparently.

Ref: https://fedoraproject.org/wiki/Changes/OpenSSLDistrustSHA1SigVer

* Work around broken cryptography in Fedora 41.
2025-01-08 22:08:18 +01:00
Felix Fontein
cfd524f345 Fix CI badge image URL. Add documentation badge. 2025-01-04 11:27:22 +01:00
Felix Fontein
355480601d Make 2.9, 2.10, and 2.11 sanity tests shut up. 2025-01-03 15:26:19 +01:00
Felix Fontein
f956ddcc77 Add extra sanity test for acme action group. 2025-01-03 14:56:36 +01:00
Felix Fontein
ccb4ecfbd8 The next expected release will be 2.24.0. 2024-12-30 22:36:49 +01:00
Felix Fontein
95886d1cf9 Release 2.23.0. 2.23.0 2024-12-30 22:04:25 +01:00
Felix Fontein
9b53f4b382 Prepare 2.23.0 release. 2024-12-30 21:17:40 +01:00
Felix Fontein
3f0e292246 Add 'idempotent' attribute (#833)
* Add 'idempotent' attribute.

* Mention check mode in attribute description.

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>

---------

Co-authored-by: Alexei Znamensky <103110+russoz@users.noreply.github.com>
2024-12-30 21:11:12 +01:00
Felix Fontein
0d4b16aadb acme_certificate: be nicer to non-compliant CAs (#832)
* Be nicer to non-compliant CAs.

* Mark as a feature, not a bugfix.
2024-12-30 10:30:33 +00:00
Felix Fontein
db04914ab6 Deprecate PyOpenSSL. (#831) 2024-12-30 10:10:10 +01:00
Felix Fontein
abb0d67774 Add validation option. (#830) 2024-12-30 10:09:51 +01:00
Felix Fontein
05c442ab5e luks_device: allow to provide passphrases base64-encoded (#829)
* Allow to provide passphrases base64-encoded.

* Add note on binary passphrases.
2024-12-30 10:09:32 +01:00