An operator charm providing an integrator for connecting to S3 provides.
Warning
This README uses Juju 3 commands.
If you are using Juju <= 2.9, check the collapsible sections below code blocks.
juju deploy s3-integrator --channel edge
git clone https://github.com/canonical/s3-integrator.git
cd s3-integrator/
lxd init --auto
lxc network set lxdbr0 ipv6.address none
sudo snap install charmcraft --classic
charmcraft pack
Then,
juju deploy ./s3-integrator_ubuntu-22.04-amd64.charm
To deploy your S3 credentials to the application, run the following action:
juju run s3-integrator/leader sync-s3-credentials access-key=<your_key> secret-key=<your_secret_key>
juju <= 2.9
juju run-action s3-integrator/leader sync-s3-credentials access-key=<your_key> secret-key=<your_secret_key>
To configure the S3 integrator charm, you may provide the following configuration options:
endpoint
: the endpoint used to connect to the object storage.bucket
: the bucket/container name delivered by the provider (the bucket name can be specified also on the requirer application).region
: the region used to connect to the object storage.path
: the path inside the bucket/container to store objects.attributes
: the custom metadata (HTTP headers).s3-uri-style
: the S3 protocol specific bucket path lookup type.storage-class
:the storage class for objects uploaded to the object storage.tls-ca-chain
: the complete CA chain, which can be used for HTTPS validation.s3-api-version
: the S3 protocol specific API signature.experimental-delete-older-than-days
: the amount of day after which backups going to be deleted. EXPERIMENTAL option.
The only mandatory fields for the integrator are access-key secret-key and bucket.
In order to set ca-chain certificate use the following command:
juju config s3-integrator tls-ca-chain="$(base64 -w0 your_ca_chain.pem)"
Attributes needs to be specified in comma-separated format.
To retrieve the S3 credentials, run the following action:
juju run s3-integrator/leader get-s3-credentials
juju <= 2.9
juju run-action s3-integrator/leader get-s3-credentials --wait
If the credentials are not set, the action will fail.
To retrieve the set of connection parameters, run the following command:
juju run s3-integrator/leader get-s3-connection-info
juju <= 2.9
juju run-action s3-integrator/leader get-s3-connection-info --wait
Relations are supported via the s3
interface. To create a relation:
juju integrate s3-integrator application
juju <= 2.9
juju relate s3-integrator application
To remove relation a relation:
juju remove-relation s3-integrator application
Security issues in the Charmed S3 Integrator Operator can be reported through LaunchPad. Please do not file GitHub issues about security issues.
Please see the Juju SDK docs for guidelines on enhancements to this charm following best practice guidelines, and CONTRIBUTING.md for developer guidance.