pub struct SyncConfig {
pub access_key: Option<String>,
pub bucket: String,
pub endpoint: Option<String>,
pub provider: Option<String>,
pub region: Option<String>,
pub secret_key: Option<String>,
pub start_from_checkpoint: bool,
}
Expand description
SyncConfig
JSON schema
{
"type": "object",
"required": [
"bucket",
"start_from_checkpoint"
],
"properties": {
"access_key": {
"description": "The access key used to authenticate with the storage provider.\n\nIf not provided, rclone will fall back to environment-based credentials, such as\n`RCLONE_S3_ACCESS_KEY_ID`. In Kubernetes environments using IRSA (IAM Roles for Service Accounts),\nthis can be left empty to allow automatic authentication via the pod's service account.",
"type": [
"string",
"null"
]
},
"bucket": {
"description": "The name of the storage bucket.\n\nThis may include a path to a folder inside the bucket (e.g., `my-bucket/data`).",
"type": "string"
},
"endpoint": {
"description": "The endpoint URL for the storage service.\n\nThis is typically required for custom or local S3-compatible storage providers like MinIO.\nExample: `http://localhost:9000`\n\nRelevant rclone config key: [`endpoint`](https://rclone.org/s3/#s3-endpoint)",
"type": [
"string",
"null"
]
},
"provider": {
"description": "The name of the cloud storage provider (e.g., `\"AWS\"`, `\"Minio\"`).\n\nUsed for provider-specific behavior in rclone.\nIf omitted, defaults to `\"Other\"`.\n\nSee [rclone S3 provider documentation](https://rclone.org/s3/#s3-provider)",
"type": [
"string",
"null"
]
},
"region": {
"description": "The region that this bucket is in.\n\nLeave empty for Minio or the default region (`us-east-1` for AWS).",
"type": [
"string",
"null"
]
},
"secret_key": {
"description": "The secret key used together with the access key for authentication.\n\nIf not provided, rclone will fall back to environment-based credentials, such as\n`RCLONE_S3_SECRET_ACCESS_KEY`. In Kubernetes environments using IRSA (IAM Roles for Service Accounts),\nthis can be left empty to allow automatic authentication via the pod's service account.",
"type": [
"string",
"null"
]
},
"start_from_checkpoint": {
"description": "If `true`, will try to pull the latest checkpoint from the configured\nobject store and resume from that point.",
"type": "boolean"
}
}
}
Fields§
§access_key: Option<String>
The access key used to authenticate with the storage provider.
If not provided, rclone will fall back to environment-based credentials, such as
RCLONE_S3_ACCESS_KEY_ID
. In Kubernetes environments using IRSA (IAM Roles for Service Accounts),
this can be left empty to allow automatic authentication via the pod’s service account.
bucket: String
The name of the storage bucket.
This may include a path to a folder inside the bucket (e.g., my-bucket/data
).
endpoint: Option<String>
The endpoint URL for the storage service.
This is typically required for custom or local S3-compatible storage providers like MinIO.
Example: http://localhost:9000
Relevant rclone config key: endpoint
provider: Option<String>
The name of the cloud storage provider (e.g., "AWS"
, "Minio"
).
Used for provider-specific behavior in rclone.
If omitted, defaults to "Other"
.
region: Option<String>
The region that this bucket is in.
Leave empty for Minio or the default region (us-east-1
for AWS).
secret_key: Option<String>
The secret key used together with the access key for authentication.
If not provided, rclone will fall back to environment-based credentials, such as
RCLONE_S3_SECRET_ACCESS_KEY
. In Kubernetes environments using IRSA (IAM Roles for Service Accounts),
this can be left empty to allow automatic authentication via the pod’s service account.
start_from_checkpoint: bool
If true
, will try to pull the latest checkpoint from the configured
object store and resume from that point.
Implementations§
Source§impl SyncConfig
impl SyncConfig
pub fn builder() -> SyncConfig
Trait Implementations§
Source§impl Clone for SyncConfig
impl Clone for SyncConfig
Source§fn clone(&self) -> SyncConfig
fn clone(&self) -> SyncConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more