diff --git a/internal/certmgmt/deployers/sp_byteplus_cdn.go b/internal/certmgmt/deployers/sp_byteplus_cdn.go
index dbf4cc528..5b3e5fabc 100644
--- a/internal/certmgmt/deployers/sp_byteplus_cdn.go
+++ b/internal/certmgmt/deployers/sp_byteplus_cdn.go
@@ -19,6 +19,7 @@ func init() {
provider, err := bytepluscdn.NewDeployer(&bytepluscdn.DeployerConfig{
AccessKey: credentials.AccessKey,
SecretKey: credentials.SecretKey,
+ ProjectName: credentials.ProjectName,
DomainMatchPattern: xmaps.GetString(options.ProviderExtendedConfig, "domainMatchPattern"),
Domain: xmaps.GetString(options.ProviderExtendedConfig, "domain"),
})
diff --git a/internal/domain/access.go b/internal/domain/access.go
index 14ae89bbf..fd0b2556b 100644
--- a/internal/domain/access.go
+++ b/internal/domain/access.go
@@ -135,8 +135,9 @@ type AccessConfigForBunny struct {
}
type AccessConfigForBytePlus struct {
- AccessKey string `json:"accessKey"`
- SecretKey string `json:"secretKey"`
+ AccessKey string `json:"accessKey"`
+ SecretKey string `json:"secretKey"`
+ ProjectName string `json:"projectName,omitempty"`
}
type AccessConfigForCacheFly struct {
diff --git a/pkg/core/certifier/challengers/dns01/dynv6/internal/lego.go b/pkg/core/certifier/challengers/dns01/dynv6/internal/lego.go
index 15a6d898d..b2543ab86 100644
--- a/pkg/core/certifier/challengers/dns01/dynv6/internal/lego.go
+++ b/pkg/core/certifier/challengers/dns01/dynv6/internal/lego.go
@@ -74,7 +74,7 @@ func NewDNSProviderConfig(config *Config) (*DNSProvider, error) {
client, err := dynv6sdk.NewClient(config.HTTPToken)
if err != nil {
- return nil, fmt.Errorf("dnsexit: %w", err)
+ return nil, fmt.Errorf("dynv6: %w", err)
} else {
client.SetTimeout(config.HTTPTimeout)
}
diff --git a/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go b/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go
index 0a5074ffb..3604a575a 100644
--- a/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go
+++ b/pkg/core/deployer/providers/byteplus-cdn/byteplus_cdn.go
@@ -8,7 +8,7 @@ import (
"strings"
bpcdn "github.com/byteplus-sdk/byteplus-sdk-golang/service/cdn"
- bp "github.com/volcengine/volcengine-go-sdk/volcengine"
+ "github.com/samber/lo"
"github.com/certimate-go/certimate/pkg/core/certmgr"
certmgrimpl "github.com/certimate-go/certimate/pkg/core/certmgr/providers/byteplus-cdn"
@@ -21,6 +21,8 @@ type DeployerConfig struct {
AccessKey string `json:"accessKey"`
// BytePlus SecretKey。
SecretKey string `json:"secretKey"`
+ // BytePlus 项目名称。
+ ProjectName string `json:"projectName,omitempty"`
// 域名匹配模式。
// 零值时默认值 [DOMAIN_MATCH_PATTERN_EXACT]。
DomainMatchPattern string `json:"domainMatchPattern,omitempty"`
@@ -166,10 +168,11 @@ func (d *Deployer) getMatchedDomainsByWildcard(ctx context.Context, wildcardDoma
}
listCdnDomainsReq := &bpcdn.ListCdnDomainsRequest{
- Domain: bp.String(strings.TrimPrefix(wildcardDomain, "*.")),
- Status: bp.String("online"),
- PageNum: bp.Int64(int64(listCdnDomainsPageNum)),
- PageSize: bp.Int64(int64(listCdnDomainsPageSize)),
+ Project: lo.EmptyableToPtr(d.config.ProjectName),
+ Domain: bpcdn.GetStrPtr(strings.TrimPrefix(wildcardDomain, "*.")),
+ Status: bpcdn.GetStrPtr("online"),
+ PageNum: bpcdn.GetInt64Ptr(int64(listCdnDomainsPageNum)),
+ PageSize: bpcdn.GetInt64Ptr(int64(listCdnDomainsPageSize)),
}
listCdnDomainsResp, err := d.sdkClient.ListCdnDomains(listCdnDomainsReq)
d.logger.Debug("sdk request 'cdn.ListCdnDomains'", slog.Any("request", listCdnDomainsReq), slog.Any("response", listCdnDomainsResp))
diff --git a/pkg/core/deployer/providers/ksyun-cdn/ksyun_cdn.go b/pkg/core/deployer/providers/ksyun-cdn/ksyun_cdn.go
index 712ff99d7..a1b3813e7 100644
--- a/pkg/core/deployer/providers/ksyun-cdn/ksyun_cdn.go
+++ b/pkg/core/deployer/providers/ksyun-cdn/ksyun_cdn.go
@@ -174,7 +174,7 @@ func (d *Deployer) deployToCertificate(ctx context.Context, certPEM, privkeyPEM
}
// 更新证书
- // https://docs.ksyun.com/documents/259
+ // REF: https://docs.ksyun.com/documents/259
setCertificateInput := map[string]any{
"CertificateId": d.config.CertificateId,
"CertificateName": fmt.Sprintf("certimate_%d", time.Now().UnixMilli()),
@@ -194,7 +194,7 @@ func (d *Deployer) getAllDomains(ctx context.Context) ([]string, error) {
domains := make([]string, 0)
// 查询域名列表
- // https://docs.ksyun.com/documents/198
+ // REF: https://docs.ksyun.com/documents/198
getCdnDomainsPageNumber := 1
getCdnDomainsPageSize := 100
for {
@@ -250,7 +250,7 @@ func (d *Deployer) getAllDomains(ctx context.Context) ([]string, error) {
func (d *Deployer) findDomainIdByDomain(ctx context.Context, domain string) (string, error) {
// 查询域名列表
- // https://docs.ksyun.com/documents/198
+ // REF: https://docs.ksyun.com/documents/198
getCdnDomainsPageNumber := 1
getCdnDomainsPageSize := 100
for {
@@ -316,7 +316,7 @@ func (d *Deployer) updateDomainCertificate(ctx context.Context, domain string, c
}
// 为加速域名配置证书接口
- // https://docs.ksyun.com/documents/261
+ // REF: https://docs.ksyun.com/documents/261
configCertificateInput := map[string]any{
"Enable": "on",
"DomainIds": domainId,
diff --git a/pkg/core/deployer/providers/ksyun-slb/ksyun_slb.go b/pkg/core/deployer/providers/ksyun-slb/ksyun_slb.go
index d45c9cb02..61ee9335d 100644
--- a/pkg/core/deployer/providers/ksyun-slb/ksyun_slb.go
+++ b/pkg/core/deployer/providers/ksyun-slb/ksyun_slb.go
@@ -78,7 +78,7 @@ func (d *Deployer) deployToCertificate(ctx context.Context, certPEM, privkeyPEM
}
// 更新证书信息
- // https://docs.ksyun.com/documents/2121
+ // REF: https://docs.ksyun.com/documents/2121
modifyCertificateInput := map[string]any{
"CertificateId": d.config.CertificateId,
"CertificateName": fmt.Sprintf("certimate_%d", time.Now().UnixMilli()),
diff --git a/pkg/core/deployer/providers/volcengine-apig/volcengine_apig.go b/pkg/core/deployer/providers/volcengine-apig/volcengine_apig.go
index 814ed1e81..2a792b9c3 100644
--- a/pkg/core/deployer/providers/volcengine-apig/volcengine_apig.go
+++ b/pkg/core/deployer/providers/volcengine-apig/volcengine_apig.go
@@ -190,7 +190,7 @@ func (d *Deployer) getAllDomains(ctx context.Context) ([]*veapig.ItemForListCust
domains := make([]*veapig.ItemForListCustomDomainsOutput, 0)
// 查询自定义域名列表
- // https://api.volcengine.com/api-explorer?action=ListCustomDomains&serviceCode=apig&version=2021-03-03
+ // REF: https://api.volcengine.com/api-explorer?action=ListCustomDomains&serviceCode=apig&version=2021-03-03
listCustomDomainsPageNumber := 1
listCustomDomainsPageSize := 100
for {
diff --git a/pkg/core/deployer/providers/zenlayer-cdn/zenlayer_cdn.go b/pkg/core/deployer/providers/zenlayer-cdn/zenlayer_cdn.go
index 6e39909a7..0c6206ba2 100644
--- a/pkg/core/deployer/providers/zenlayer-cdn/zenlayer_cdn.go
+++ b/pkg/core/deployer/providers/zenlayer-cdn/zenlayer_cdn.go
@@ -236,7 +236,7 @@ func (d *Deployer) getAllDomains(ctx context.Context) ([]*zcdnsdk.DomainInfo, er
domains := make([]*zcdnsdk.DomainInfo, 0)
// 查询加速域名列表
- // https://docs.console.zenlayer.com/api-reference/cn/networking/cdn/domain/describedomains
+ // REF: https://docs.console.zenlayer.com/api-reference/cn/networking/cdn/domain/describedomains
describeDomainsPageNum := 1
describeDomainsPageSize := 100
for {
diff --git a/ui/src/components/access/forms/AccessConfigFieldsProviderBytePlus.tsx b/ui/src/components/access/forms/AccessConfigFieldsProviderBytePlus.tsx
index 49f6385dc..7e8d06e80 100644
--- a/ui/src/components/access/forms/AccessConfigFieldsProviderBytePlus.tsx
+++ b/ui/src/components/access/forms/AccessConfigFieldsProviderBytePlus.tsx
@@ -36,6 +36,16 @@ const AccessConfigFormFieldsProviderBytePlus = () => {
>