blob: 162c566dbd8c90ce0501370dd7cf3a6bbee4fd1c [file] [log] [blame]
# ============================================= BlobStore Implementation ==================================
# Read https://james.apache.org/server/config-blobstore.html for further details
# Choose your BlobStore implementation
# Mandatory, allowed values are: cassandra, s3, hybrid
# hybrid is using both objectstorage for unfrequently read or big blobs & cassandra for small, often read blobs
implementation=s3
# ========================================= ObjectStorage deduplication ========================================
# If you choose to enable deduplication, the mails with the same content will be stored only once.
# Warning: Once this feature is enabled, there is no turning back as turning it off will lead to the deletion of all
# the mails sharing the same content once one is deleted.
# Mandatory, Allowed values are: true, false
deduplication.enable=false
# ========================================= Cassandra BlobStore Cache ======================================
# A cassandra cache can be enabled to reduce latency when reading small blobs frequently
# A dedicated keyspace with a replication factor of one is then used
# Cache eviction policy is TTL based
# Only blobs below a given threshold will be stored.
# To be noted that blobs are stored within a single Cassandra row, hence a low threshold should be used.
# Enable the cache? Optional and default to false. Must be a boolean.
cache.enable=false
# Cache eviction policy is TTL based. Optional and defaults to 7 days. Must be a duration.
# Valid units: ms, sec, min, hour, day, week, month, year
# cache.cassandra.ttl=7days
# Timeout after which this cache should be bypassed. Optional and defaults to 100ms. Can not exceed 1 hour.
# Must be a duration Valid units: ms, sec, min, hour, day, week, month, year
# cache.cassandra.timeout=100ms
# Maximum size of stored objects expressed in bytes. Must be strictly positive. Defaults to 8192.
# Units: bytes, Kib, MiB, GiB, TiB
# cache.sizeThresholdInBytes=8 KiB
# ============================================== ObjectStorage ============================================
# ========================================= ObjectStorage Buckets ==========================================
# bucket names prefix
# Optional, default no prefix
# objectstorage.bucketPrefix=prod-
# Default bucket name
# Optional, default is bucketPrefix + `default`
objectstorage.namespace=${env:OS_NAMESPACE}
# ========================================= ObjectStorage on S3 =============================================
objectstorage.s3.region=${env:OS_S3_REGION}
objectstorage.s3.endPoint=${env:OS_S3_ENDPOINT}
objectstorage.s3.accessKeyId=${env:OS_S3_ACCESSKEYID}
objectstorage.s3.secretKey=${env:OS_S3_SECRETKEY}
# ============================================ Blobs Exporting ==============================================
# Read https://james.apache.org/server/config-blob-export.html for further details
# Choosing blob exporting mechanism, allowed mechanism are: localFile, linshare
# LinShare is a file sharing service, will be explained in the below section
# Optional, default is localFile
blob.export.implementation=localFile
# ======================================= Local File Blobs Exporting ========================================
# Optional, directory to store exported blob, directory path follows James file system format
# default is file://var/blobExporting
blob.export.localFile.directory=file://var/blobExporting
# ======================================= LinShare File Blobs Exporting ========================================
# LinShare is a sharing service where you can use james, connects to an existing LinShare server and shares files to
# other mail addresses as long as those addresses available in LinShare. For example you can deploy James and LinShare
# sharing the same LDAP repository
# Mandatory if you choose LinShare, url to connect to LinShare service
# blob.export.linshare.url=http://linshare:8080
# ======================================= LinShare Configuration BasicAuthentication ===================================
# Authentication is mandatory if you choose LinShare, TechnicalAccount is need to connect to LinShare specific service.
# For Example: It will be formalized to 'Authorization: Basic {Credential of UUID/password}'
# blob.export.linshare.technical.account.uuid=Technical_Account_UUID
# blob.export.linshare.technical.account.password=password