mirror of
https://github.com/usual2970/certimate.git
synced 2025-06-08 21:49:52 +00:00
33 lines
958 B
Go
33 lines
958 B
Go
package uploader
|
||
|
||
import (
|
||
"context"
|
||
"log/slog"
|
||
)
|
||
|
||
// 表示定义证书上传器的抽象类型接口。
|
||
// 云服务商通常会提供 SSL 证书管理服务,可供用户集中管理证书。
|
||
// 注意与 `Deployer` 区分,“上传”通常为“部署”的前置操作。
|
||
type Uploader interface {
|
||
WithLogger(logger *slog.Logger) Uploader
|
||
|
||
// 上传证书。
|
||
//
|
||
// 入参:
|
||
// - ctx:上下文。
|
||
// - certPEM:证书 PEM 内容。
|
||
// - privkeyPEM:私钥 PEM 内容。
|
||
//
|
||
// 出参:
|
||
// - res:上传结果。
|
||
// - err: 错误。
|
||
Upload(ctx context.Context, certPEM string, privkeyPEM string) (res *UploadResult, err error)
|
||
}
|
||
|
||
// 表示证书上传结果的数据结构,包含上传后的证书 ID、名称和其他数据。
|
||
type UploadResult struct {
|
||
CertId string `json:"certId"`
|
||
CertName string `json:"certName,omitzero"`
|
||
ExtendedData map[string]any `json:"extendedData,omitempty"`
|
||
}
|