nefelibata.publishers package¶
Submodules¶
nefelibata.publishers.ftp module¶
- class nefelibata.publishers.ftp.FTPPublisher(root: pathlib.Path, config: Dict[str, Any], host: str, username: Optional[str] = None, password: Optional[str] = None, basedir: Optional[str] = None)[source]¶
Bases:
nefelibata.publishers.Publisher
A publisher that uploads the weblog to FTP.
nefelibata.publishers.ipfs module¶
- class nefelibata.publishers.ipfs.IPFSPublisher(root: pathlib.Path, config: Dict[str, Any], username: Optional[str] = None, host: Optional[str] = None)[source]¶
Bases:
nefelibata.publishers.Publisher
A publisher that uploads the weblog to IPFS through a remote host.
nefelibata.publishers.neocities module¶
- class nefelibata.publishers.neocities.NeocitiesPublisher(root: pathlib.Path, config: Dict[str, Any], username: Optional[str] = None, password: Optional[str] = None, api_key: Optional[str] = None)[source]¶
Bases:
nefelibata.publishers.Publisher
A publisher that uploads the weblog to Neocities.
nefelibata.publishers.s3 module¶
- class nefelibata.publishers.s3.S3Publisher(root: pathlib.Path, config: Dict[str, Any], bucket: str, AWS_ACCESS_KEY_ID: str, AWS_SECRET_ACCESS_KEY: str, configure_website: bool = False, configure_route53: Optional[str] = None, region: str = 'us-east-1')[source]¶
Bases:
nefelibata.publishers.Publisher
A publisher that uploads the weblog to S3.
You need a user with this policy:
- {
“Version”: “2012-10-17”, “Statement”: [
- {
“Sid”: “VisualEditor0”, “Effect”: “Allow”, “Action”: [
“s3:GetBucketWebsite”, “s3:PutBucketWebsite”, “route53:ChangeResourceRecordSets”, “s3:PutBucketAcl”, “s3:CreateBucket”
], “Resource”: [
“arn:aws:route53:::hostedzone/taoetc.org”, “arn:aws:s3:::blog.taoetc.org”
]
}, {
“Sid”: “VisualEditor1”, “Effect”: “Allow”, “Action”: [
“s3:PutObject”, “s3:GetObject”, “s3:PutObjectAcl”
], “Resource”: “arn:aws:s3:::blog.taoetc.org/*”
}, {
“Sid”: “VisualEditor2”, “Effect”: “Allow”, “Action”: “route53:ListHostedZones”, “Resource”: “*”
}
]
}
Module contents¶
- class nefelibata.publishers.Publisher(root: pathlib.Path, config: Dict[str, Any], *args: Any, **kwargs: Any)[source]¶
Bases:
object
- find_modified_files(force: bool, since: float) List[pathlib.Path] [source]¶
- nefelibata.publishers.get_publishers(root: pathlib.Path, config: Dict[str, Any]) List[nefelibata.publishers.Publisher] [source]¶
Return all publishers.