32 lines
613 B
Python
32 lines
613 B
Python
"""CA adapter interfaces."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from dataclasses import dataclass
|
|
from typing import Optional
|
|
|
|
|
|
@dataclass
|
|
class SubmitResult:
|
|
request_id: str
|
|
ca: str
|
|
|
|
|
|
@dataclass
|
|
class CertStatus:
|
|
status: str
|
|
raw: dict
|
|
|
|
|
|
class CAAdapter:
|
|
name: str
|
|
|
|
def submit_csr(self, csr_pem: str, **kwargs) -> SubmitResult:
|
|
raise NotImplementedError
|
|
|
|
def poll_status(self, request_id: str) -> CertStatus:
|
|
raise NotImplementedError
|
|
|
|
def collect_certificate(self, request_id: str, *, format_name: Optional[str] = None) -> str:
|
|
raise NotImplementedError
|