amazon_s3_storage_config.py 959 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from typing import Optional
  2. from pydantic import BaseModel, Field
  3. class S3StorageConfig(BaseModel):
  4. """
  5. S3 storage configs
  6. """
  7. S3_ENDPOINT: Optional[str] = Field(
  8. description='S3 storage endpoint',
  9. default=None,
  10. )
  11. S3_REGION: Optional[str] = Field(
  12. description='S3 storage region',
  13. default=None,
  14. )
  15. S3_BUCKET_NAME: Optional[str] = Field(
  16. description='S3 storage bucket name',
  17. default=None,
  18. )
  19. S3_ACCESS_KEY: Optional[str] = Field(
  20. description='S3 storage access key',
  21. default=None,
  22. )
  23. S3_SECRET_KEY: Optional[str] = Field(
  24. description='S3 storage secret key',
  25. default=None,
  26. )
  27. S3_ADDRESS_STYLE: str = Field(
  28. description='S3 storage address style',
  29. default='auto',
  30. )
  31. S3_USE_AWS_MANAGED_IAM: bool = Field(
  32. description='whether to use aws managed IAM for S3',
  33. default=False,
  34. )