[MM-53454] Add export file settings + slash command for public link (#23915)
Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
@@ -1546,6 +1546,22 @@ type FileSettings struct {
|
||||
AmazonS3SSE *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
AmazonS3Trace *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
AmazonS3RequestTimeoutMilliseconds *int64 `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
// Export store settings
|
||||
DedicatedExportStore *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
ExportDriverName *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
ExportDirectory *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3AccessKeyId *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3SecretAccessKey *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3Bucket *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3PathPrefix *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3Region *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3Endpoint *string `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3SSL *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
ExportAmazonS3SignV2 *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
ExportAmazonS3SSE *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
ExportAmazonS3Trace *bool `access:"environment_file_storage,write_restrictable,cloud_restrictable"`
|
||||
ExportAmazonS3RequestTimeoutMilliseconds *int64 `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
ExportAmazonS3PresignExpiresSeconds *int64 `access:"environment_file_storage,write_restrictable,cloud_restrictable"` // telemetry: none
|
||||
}
|
||||
|
||||
func (s *FileSettings) SetDefaults(isUpdate bool) {
|
||||
@@ -1653,6 +1669,68 @@ func (s *FileSettings) SetDefaults(isUpdate bool) {
|
||||
if s.AmazonS3RequestTimeoutMilliseconds == nil {
|
||||
s.AmazonS3RequestTimeoutMilliseconds = NewInt64(30000)
|
||||
}
|
||||
|
||||
if s.DedicatedExportStore == nil {
|
||||
s.DedicatedExportStore = NewBool(false)
|
||||
}
|
||||
|
||||
if s.ExportDriverName == nil {
|
||||
s.ExportDriverName = NewString(ImageDriverLocal)
|
||||
}
|
||||
|
||||
if s.ExportDirectory == nil || *s.ExportDirectory == "" {
|
||||
s.ExportDirectory = NewString(FileSettingsDefaultDirectory)
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3AccessKeyId == nil {
|
||||
s.ExportAmazonS3AccessKeyId = NewString("")
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3SecretAccessKey == nil {
|
||||
s.ExportAmazonS3SecretAccessKey = NewString("")
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3Bucket == nil {
|
||||
s.ExportAmazonS3Bucket = NewString("")
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3PathPrefix == nil {
|
||||
s.ExportAmazonS3PathPrefix = NewString("")
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3Region == nil {
|
||||
s.ExportAmazonS3Region = NewString("")
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3Endpoint == nil || *s.ExportAmazonS3Endpoint == "" {
|
||||
// Defaults to "s3.amazonaws.com"
|
||||
s.ExportAmazonS3Endpoint = NewString("s3.amazonaws.com")
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3SSL == nil {
|
||||
s.ExportAmazonS3SSL = NewBool(true) // Secure by default.
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3SignV2 == nil {
|
||||
s.ExportAmazonS3SignV2 = new(bool)
|
||||
// Signature v2 is not enabled by default.
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3SSE == nil {
|
||||
s.ExportAmazonS3SSE = NewBool(false) // Not Encrypted by default.
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3Trace == nil {
|
||||
s.ExportAmazonS3Trace = NewBool(false)
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3RequestTimeoutMilliseconds == nil {
|
||||
s.ExportAmazonS3RequestTimeoutMilliseconds = NewInt64(30000)
|
||||
}
|
||||
|
||||
if s.ExportAmazonS3PresignExpiresSeconds == nil {
|
||||
s.ExportAmazonS3PresignExpiresSeconds = NewInt64(21600) // 6h
|
||||
}
|
||||
}
|
||||
|
||||
type EmailSettings struct {
|
||||
|
||||
Ссылка в новой задаче
Block a user