canonical / nginx-ingress-integrator-operator

nginx-ingress-integrator-operator - charm repository.
Apache License 2.0
1 stars 8 forks source link

Upgrade to v3 and get full cert chain #129

Closed gregory-schiano closed 5 months ago

gregory-schiano commented 5 months ago

Applicable spec:

Overview

Upgrade the TLS Certificates library to v3. Also inject the full chain in the K8S secret instead of only the certificates.

Rationale

When a certificates uses intermediate certificate the chain be stored in the secret for Nginx to provide a valid certificate chain to the user

Juju Events Changes

N/A

Module Changes

Due to some event changed, I had to adapt the get_hostname_from_csr to get_hostname_from_cert as CSR wasn't available anymore in some events.

Library Changes

Upgraded TLS Certificate library

Checklist

github-actions[bot] commented 5 months ago

Test coverage for 552554ec6893ee2c8db8b2d882a86d0c88203193

Name                               Stmts   Miss Branch BrPart  Cover   Missing
------------------------------------------------------------------------------
src/charm.py                         269     10     80      5    96%   198, 205, 283-285, 322, 360, 411, 552-553
src/consts.py                          5      0      0      0   100%
src/controller/__init__.py             1      0      0      0   100%
src/controller/endpoint_slice.py      56      4     10      4    88%   103, 127, 149, 169
src/controller/endpoints.py           34      1      6      0    92%   53
src/controller/ingress.py            104      8     44      4    89%   60, 80-81, 185, 262->273, 266-268, 271-272
src/controller/resource.py            54      1      9      1    97%   64
src/controller/secret.py              59      8     19      4    79%   53, 71-76, 106->111, 108-110, 111->104, 133, 162
src/controller/service.py             38      1      6      0    93%   51
src/exceptions.py                      4      0      0      0   100%
src/ingress_definition.py            272     26     70      8    89%   41, 70, 174-178, 196, 315-316, 361, 373, 377, 393-394, 409-410, 435, 437, 462-463, 496-497, 504-506, 508
src/tls_relation.py                  121      6     25      1    94%   123, 136-142
------------------------------------------------------------------------------
TOTAL                               1017     65    269     27    92%

Static code analysis report

Run started:2024-05-03 11:12:08.090799

Test results:
    No issues identified.

Code scanned:
    Total lines of code: 4854
    Total lines skipped (#nosec): 11
    Total potential issues skipped due to specifically being disabled (e.g., #nosec BXXX): 0

Run metrics:
    Total issues (by severity):
        Undefined: 0
        Low: 0
        Medium: 0
        High: 0
    Total issues (by confidence):
        Undefined: 0
        Low: 0
        Medium: 0
        High: 0
Files skipped (0):