[DPE-4412] Use TLS CA chain for backups #484
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue
It's possible to configure a TLS CA chain in the S3 integrator charm. However, the PostgreSQL charm doesn't use that, so right now, it's not possible to connect to S3-compatible storages which provide a self-signed SSL certificate.
Solution
Port of canonical/postgresql-k8s-operator#493.
Push the TLS CA chain contents to a file and reference it in the pgBackRest configuration (and also in the boto3 calls), so it uses that CA when communicating with the S3-compatible storage.
Manual testing:
snapcraft -v sudo snap install --dangerous microceph_*.snap
aws configure aws --endpoint-url=http://localhost s3 mb s3://test --region ""
create-backup
,list-backups
andrestore
) as usual.An integration test using MicroCeph will be added in another PR (because it depends on canonical/microceph#355).
Fixes #471.