mirror of
https://github.com/woodchen-ink/certimate.git
synced 2025-07-18 17:31:55 +08:00
refactor: clean code
This commit is contained in:
parent
7478dd7f47
commit
794695c313
@ -3,12 +3,12 @@ package applicant
|
|||||||
import "github.com/usual2970/certimate/internal/domain"
|
import "github.com/usual2970/certimate/internal/domain"
|
||||||
|
|
||||||
const (
|
const (
|
||||||
sslProviderLetsEncrypt = string(domain.ApplyCAProviderTypeLetsEncrypt)
|
sslProviderLetsEncrypt = string(domain.CAProviderTypeLetsEncrypt)
|
||||||
sslProviderLetsEncryptStaging = string(domain.ApplyCAProviderTypeLetsEncryptStaging)
|
sslProviderLetsEncryptStaging = string(domain.CAProviderTypeLetsEncryptStaging)
|
||||||
sslProviderBuypass = string(domain.ApplyCAProviderTypeBuypass)
|
sslProviderBuypass = string(domain.CAProviderTypeBuypass)
|
||||||
sslProviderGoogleTrustServices = string(domain.ApplyCAProviderTypeGoogleTrustServices)
|
sslProviderGoogleTrustServices = string(domain.CAProviderTypeGoogleTrustServices)
|
||||||
sslProviderSSLCom = string(domain.ApplyCAProviderTypeSSLCom)
|
sslProviderSSLCom = string(domain.CAProviderTypeSSLCom)
|
||||||
sslProviderZeroSSL = string(domain.ApplyCAProviderTypeZeroSSL)
|
sslProviderZeroSSL = string(domain.CAProviderTypeZeroSSL)
|
||||||
|
|
||||||
sslProviderDefault = sslProviderLetsEncrypt
|
sslProviderDefault = sslProviderLetsEncrypt
|
||||||
)
|
)
|
||||||
@ -25,6 +25,6 @@ var sslProviderUrls = map[string]string{
|
|||||||
}
|
}
|
||||||
|
|
||||||
type acmeSSLProviderConfig struct {
|
type acmeSSLProviderConfig struct {
|
||||||
Config map[domain.ApplyCAProviderType]map[string]any `json:"config"`
|
Config map[domain.CAProviderType]map[string]any `json:"config"`
|
||||||
Provider string `json:"provider"`
|
Provider string `json:"provider"`
|
||||||
}
|
}
|
||||||
|
@ -54,10 +54,10 @@ func NewWithWorkflowNode(config ApplicantWithWorkflowNodeConfig) (Applicant, err
|
|||||||
options := &applicantProviderOptions{
|
options := &applicantProviderOptions{
|
||||||
Domains: sliceutil.Filter(strings.Split(nodeConfig.Domains, ";"), func(s string) bool { return s != "" }),
|
Domains: sliceutil.Filter(strings.Split(nodeConfig.Domains, ";"), func(s string) bool { return s != "" }),
|
||||||
ContactEmail: nodeConfig.ContactEmail,
|
ContactEmail: nodeConfig.ContactEmail,
|
||||||
Provider: domain.ApplyDNSProviderType(nodeConfig.Provider),
|
Provider: domain.AcmeDns01ProviderType(nodeConfig.Provider),
|
||||||
ProviderAccessConfig: make(map[string]any),
|
ProviderAccessConfig: make(map[string]any),
|
||||||
ProviderExtendedConfig: nodeConfig.ProviderConfig,
|
ProviderExtendedConfig: nodeConfig.ProviderConfig,
|
||||||
CAProvider: domain.ApplyCAProviderType(nodeConfig.CAProvider),
|
CAProvider: domain.CAProviderType(nodeConfig.CAProvider),
|
||||||
CAProviderAccessConfig: make(map[string]any),
|
CAProviderAccessConfig: make(map[string]any),
|
||||||
CAProviderExtendedConfig: nodeConfig.CAProviderConfig,
|
CAProviderExtendedConfig: nodeConfig.CAProviderConfig,
|
||||||
KeyAlgorithm: nodeConfig.KeyAlgorithm,
|
KeyAlgorithm: nodeConfig.KeyAlgorithm,
|
||||||
@ -88,7 +88,7 @@ func NewWithWorkflowNode(config ApplicantWithWorkflowNodeConfig) (Applicant, err
|
|||||||
settings, _ := settingsRepo.GetByName(context.Background(), "sslProvider")
|
settings, _ := settingsRepo.GetByName(context.Background(), "sslProvider")
|
||||||
|
|
||||||
sslProviderConfig := &acmeSSLProviderConfig{
|
sslProviderConfig := &acmeSSLProviderConfig{
|
||||||
Config: make(map[domain.ApplyCAProviderType]map[string]any),
|
Config: make(map[domain.CAProviderType]map[string]any),
|
||||||
Provider: sslProviderDefault,
|
Provider: sslProviderDefault,
|
||||||
}
|
}
|
||||||
if settings != nil {
|
if settings != nil {
|
||||||
@ -99,7 +99,7 @@ func NewWithWorkflowNode(config ApplicantWithWorkflowNodeConfig) (Applicant, err
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
options.CAProvider = domain.ApplyCAProviderType(sslProviderConfig.Provider)
|
options.CAProvider = domain.CAProviderType(sslProviderConfig.Provider)
|
||||||
options.CAProviderAccessConfig = sslProviderConfig.Config[options.CAProvider]
|
options.CAProviderAccessConfig = sslProviderConfig.Config[options.CAProvider]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -41,10 +41,10 @@ import (
|
|||||||
type applicantProviderOptions struct {
|
type applicantProviderOptions struct {
|
||||||
Domains []string
|
Domains []string
|
||||||
ContactEmail string
|
ContactEmail string
|
||||||
Provider domain.ApplyDNSProviderType
|
Provider domain.AcmeDns01ProviderType
|
||||||
ProviderAccessConfig map[string]any
|
ProviderAccessConfig map[string]any
|
||||||
ProviderExtendedConfig map[string]any
|
ProviderExtendedConfig map[string]any
|
||||||
CAProvider domain.ApplyCAProviderType
|
CAProvider domain.CAProviderType
|
||||||
CAProviderAccessConfig map[string]any
|
CAProviderAccessConfig map[string]any
|
||||||
CAProviderExtendedConfig map[string]any
|
CAProviderExtendedConfig map[string]any
|
||||||
KeyAlgorithm string
|
KeyAlgorithm string
|
||||||
@ -62,7 +62,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.ApplyDNSProviderTypeACMEHttpReq:
|
case domain.AcmeDns01ProviderTypeACMEHttpReq:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForACMEHttpReq{}
|
access := domain.AccessConfigForACMEHttpReq{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -79,7 +79,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeAliyun, domain.ApplyDNSProviderTypeAliyunDNS:
|
case domain.AcmeDns01ProviderTypeAliyun, domain.AcmeDns01ProviderTypeAliyunDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForAliyun{}
|
access := domain.AccessConfigForAliyun{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -95,7 +95,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeAWS, domain.ApplyDNSProviderTypeAWSRoute53:
|
case domain.AcmeDns01ProviderTypeAWS, domain.AcmeDns01ProviderTypeAWSRoute53:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForAWS{}
|
access := domain.AccessConfigForAWS{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -113,7 +113,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeAzure, domain.ApplyDNSProviderTypeAzureDNS:
|
case domain.AcmeDns01ProviderTypeAzure, domain.AcmeDns01ProviderTypeAzureDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForAzure{}
|
access := domain.AccessConfigForAzure{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -131,7 +131,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeBaiduCloud, domain.ApplyDNSProviderTypeBaiduCloudDNS:
|
case domain.AcmeDns01ProviderTypeBaiduCloud, domain.AcmeDns01ProviderTypeBaiduCloudDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBaiduCloud{}
|
access := domain.AccessConfigForBaiduCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -147,7 +147,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeBunny:
|
case domain.AcmeDns01ProviderTypeBunny:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBunny{}
|
access := domain.AccessConfigForBunny{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -162,7 +162,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeCloudflare:
|
case domain.AcmeDns01ProviderTypeCloudflare:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForCloudflare{}
|
access := domain.AccessConfigForCloudflare{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -178,7 +178,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeClouDNS:
|
case domain.AcmeDns01ProviderTypeClouDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForClouDNS{}
|
access := domain.AccessConfigForClouDNS{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -194,7 +194,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeCMCCCloud:
|
case domain.AcmeDns01ProviderTypeCMCCCloud:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForCMCCCloud{}
|
access := domain.AccessConfigForCMCCCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -210,7 +210,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeDeSEC:
|
case domain.AcmeDns01ProviderTypeDeSEC:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForDeSEC{}
|
access := domain.AccessConfigForDeSEC{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -225,7 +225,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeDNSLA:
|
case domain.AcmeDns01ProviderTypeDNSLA:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForDNSLA{}
|
access := domain.AccessConfigForDNSLA{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -241,7 +241,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeDynv6:
|
case domain.AcmeDns01ProviderTypeDynv6:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForDynv6{}
|
access := domain.AccessConfigForDynv6{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -256,7 +256,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeGcore:
|
case domain.AcmeDns01ProviderTypeGcore:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForGcore{}
|
access := domain.AccessConfigForGcore{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -271,7 +271,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeGname:
|
case domain.AcmeDns01ProviderTypeGname:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForGname{}
|
access := domain.AccessConfigForGname{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -287,7 +287,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeGoDaddy:
|
case domain.AcmeDns01ProviderTypeGoDaddy:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForGoDaddy{}
|
access := domain.AccessConfigForGoDaddy{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -303,7 +303,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeHuaweiCloud, domain.ApplyDNSProviderTypeHuaweiCloudDNS:
|
case domain.AcmeDns01ProviderTypeHuaweiCloud, domain.AcmeDns01ProviderTypeHuaweiCloudDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForHuaweiCloud{}
|
access := domain.AccessConfigForHuaweiCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -320,7 +320,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeJDCloud, domain.ApplyDNSProviderTypeJDCloudDNS:
|
case domain.AcmeDns01ProviderTypeJDCloud, domain.AcmeDns01ProviderTypeJDCloudDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForJDCloud{}
|
access := domain.AccessConfigForJDCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -337,7 +337,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeNamecheap:
|
case domain.AcmeDns01ProviderTypeNamecheap:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForNamecheap{}
|
access := domain.AccessConfigForNamecheap{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -353,7 +353,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeNameDotCom:
|
case domain.AcmeDns01ProviderTypeNameDotCom:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForNameDotCom{}
|
access := domain.AccessConfigForNameDotCom{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -369,7 +369,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeNameSilo:
|
case domain.AcmeDns01ProviderTypeNameSilo:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForNameSilo{}
|
access := domain.AccessConfigForNameSilo{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -384,7 +384,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeNS1:
|
case domain.AcmeDns01ProviderTypeNS1:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForNS1{}
|
access := domain.AccessConfigForNS1{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -399,7 +399,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypePorkbun:
|
case domain.AcmeDns01ProviderTypePorkbun:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForPorkbun{}
|
access := domain.AccessConfigForPorkbun{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -415,7 +415,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypePowerDNS:
|
case domain.AcmeDns01ProviderTypePowerDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForPowerDNS{}
|
access := domain.AccessConfigForPowerDNS{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -431,7 +431,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeRainYun:
|
case domain.AcmeDns01ProviderTypeRainYun:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForRainYun{}
|
access := domain.AccessConfigForRainYun{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -446,7 +446,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeTencentCloud, domain.ApplyDNSProviderTypeTencentCloudDNS, domain.ApplyDNSProviderTypeTencentCloudEO:
|
case domain.AcmeDns01ProviderTypeTencentCloud, domain.AcmeDns01ProviderTypeTencentCloudDNS, domain.AcmeDns01ProviderTypeTencentCloudEO:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForTencentCloud{}
|
access := domain.AccessConfigForTencentCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -454,7 +454,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.ApplyDNSProviderTypeTencentCloud, domain.ApplyDNSProviderTypeTencentCloudDNS:
|
case domain.AcmeDns01ProviderTypeTencentCloud, domain.AcmeDns01ProviderTypeTencentCloudDNS:
|
||||||
applicant, err := pTencentCloud.NewChallengeProvider(&pTencentCloud.ChallengeProviderConfig{
|
applicant, err := pTencentCloud.NewChallengeProvider(&pTencentCloud.ChallengeProviderConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -463,7 +463,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
})
|
})
|
||||||
return applicant, err
|
return applicant, err
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeTencentCloudEO:
|
case domain.AcmeDns01ProviderTypeTencentCloudEO:
|
||||||
applicant, err := pTencentCloudEO.NewChallengeProvider(&pTencentCloudEO.ChallengeProviderConfig{
|
applicant, err := pTencentCloudEO.NewChallengeProvider(&pTencentCloudEO.ChallengeProviderConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -478,7 +478,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeVercel:
|
case domain.AcmeDns01ProviderTypeVercel:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForVercel{}
|
access := domain.AccessConfigForVercel{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -494,7 +494,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeVolcEngine, domain.ApplyDNSProviderTypeVolcEngineDNS:
|
case domain.AcmeDns01ProviderTypeVolcEngine, domain.AcmeDns01ProviderTypeVolcEngineDNS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForVolcEngine{}
|
access := domain.AccessConfigForVolcEngine{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -510,7 +510,7 @@ func createApplicantProvider(options *applicantProviderOptions) (challenge.Provi
|
|||||||
return applicant, err
|
return applicant, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.ApplyDNSProviderTypeWestcn:
|
case domain.AcmeDns01ProviderTypeWestcn:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForWestcn{}
|
access := domain.AccessConfigForWestcn{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
|
@ -31,7 +31,7 @@ func NewWithWorkflowNode(config DeployerWithWorkflowNodeConfig) (Deployer, error
|
|||||||
|
|
||||||
nodeConfig := config.Node.GetConfigForDeploy()
|
nodeConfig := config.Node.GetConfigForDeploy()
|
||||||
options := &deployerProviderOptions{
|
options := &deployerProviderOptions{
|
||||||
Provider: domain.DeployProviderType(nodeConfig.Provider),
|
Provider: domain.DeploymentProviderType(nodeConfig.Provider),
|
||||||
ProviderAccessConfig: make(map[string]any),
|
ProviderAccessConfig: make(map[string]any),
|
||||||
ProviderDeployConfig: nodeConfig.ProviderConfig,
|
ProviderDeployConfig: nodeConfig.ProviderConfig,
|
||||||
}
|
}
|
||||||
|
@ -83,7 +83,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type deployerProviderOptions struct {
|
type deployerProviderOptions struct {
|
||||||
Provider domain.DeployProviderType
|
Provider domain.DeploymentProviderType
|
||||||
ProviderAccessConfig map[string]any
|
ProviderAccessConfig map[string]any
|
||||||
ProviderDeployConfig map[string]any
|
ProviderDeployConfig map[string]any
|
||||||
}
|
}
|
||||||
@ -94,7 +94,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderType1PanelConsole, domain.DeployProviderType1PanelSite:
|
case domain.DeploymentProviderType1PanelConsole, domain.DeploymentProviderType1PanelSite:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigFor1Panel{}
|
access := domain.AccessConfigFor1Panel{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -102,7 +102,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderType1PanelConsole:
|
case domain.DeploymentProviderType1PanelConsole:
|
||||||
deployer, err := p1PanelConsole.NewDeployer(&p1PanelConsole.DeployerConfig{
|
deployer, err := p1PanelConsole.NewDeployer(&p1PanelConsole.DeployerConfig{
|
||||||
ApiUrl: access.ApiUrl,
|
ApiUrl: access.ApiUrl,
|
||||||
ApiKey: access.ApiKey,
|
ApiKey: access.ApiKey,
|
||||||
@ -111,7 +111,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderType1PanelSite:
|
case domain.DeploymentProviderType1PanelSite:
|
||||||
deployer, err := p1PanelSite.NewDeployer(&p1PanelSite.DeployerConfig{
|
deployer, err := p1PanelSite.NewDeployer(&p1PanelSite.DeployerConfig{
|
||||||
ApiUrl: access.ApiUrl,
|
ApiUrl: access.ApiUrl,
|
||||||
ApiKey: access.ApiKey,
|
ApiKey: access.ApiKey,
|
||||||
@ -127,7 +127,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunALB, domain.DeployProviderTypeAliyunAPIGW, domain.DeployProviderTypeAliyunCAS, domain.DeployProviderTypeAliyunCASDeploy, domain.DeployProviderTypeAliyunCDN, domain.DeployProviderTypeAliyunCLB, domain.DeployProviderTypeAliyunDCDN, domain.DeployProviderTypeAliyunESA, domain.DeployProviderTypeAliyunFC, domain.DeployProviderTypeAliyunLive, domain.DeployProviderTypeAliyunNLB, domain.DeployProviderTypeAliyunOSS, domain.DeployProviderTypeAliyunVOD, domain.DeployProviderTypeAliyunWAF:
|
case domain.DeploymentProviderTypeAliyunALB, domain.DeploymentProviderTypeAliyunAPIGW, domain.DeploymentProviderTypeAliyunCAS, domain.DeploymentProviderTypeAliyunCASDeploy, domain.DeploymentProviderTypeAliyunCDN, domain.DeploymentProviderTypeAliyunCLB, domain.DeploymentProviderTypeAliyunDCDN, domain.DeploymentProviderTypeAliyunESA, domain.DeploymentProviderTypeAliyunFC, domain.DeploymentProviderTypeAliyunLive, domain.DeploymentProviderTypeAliyunNLB, domain.DeploymentProviderTypeAliyunOSS, domain.DeploymentProviderTypeAliyunVOD, domain.DeploymentProviderTypeAliyunWAF:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForAliyun{}
|
access := domain.AccessConfigForAliyun{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -135,7 +135,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeAliyunALB:
|
case domain.DeploymentProviderTypeAliyunALB:
|
||||||
deployer, err := pAliyunALB.NewDeployer(&pAliyunALB.DeployerConfig{
|
deployer, err := pAliyunALB.NewDeployer(&pAliyunALB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -147,7 +147,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunAPIGW:
|
case domain.DeploymentProviderTypeAliyunAPIGW:
|
||||||
deployer, err := pAliyunAPIGW.NewDeployer(&pAliyunAPIGW.DeployerConfig{
|
deployer, err := pAliyunAPIGW.NewDeployer(&pAliyunAPIGW.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -159,7 +159,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunCAS:
|
case domain.DeploymentProviderTypeAliyunCAS:
|
||||||
deployer, err := pAliyunCAS.NewDeployer(&pAliyunCAS.DeployerConfig{
|
deployer, err := pAliyunCAS.NewDeployer(&pAliyunCAS.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -167,7 +167,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunCASDeploy:
|
case domain.DeploymentProviderTypeAliyunCASDeploy:
|
||||||
deployer, err := pAliyunCASDeploy.NewDeployer(&pAliyunCASDeploy.DeployerConfig{
|
deployer, err := pAliyunCASDeploy.NewDeployer(&pAliyunCASDeploy.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -177,7 +177,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunCDN:
|
case domain.DeploymentProviderTypeAliyunCDN:
|
||||||
deployer, err := pAliyunCDN.NewDeployer(&pAliyunCDN.DeployerConfig{
|
deployer, err := pAliyunCDN.NewDeployer(&pAliyunCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -185,7 +185,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunCLB:
|
case domain.DeploymentProviderTypeAliyunCLB:
|
||||||
deployer, err := pAliyunCLB.NewDeployer(&pAliyunCLB.DeployerConfig{
|
deployer, err := pAliyunCLB.NewDeployer(&pAliyunCLB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -197,7 +197,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunDCDN:
|
case domain.DeploymentProviderTypeAliyunDCDN:
|
||||||
deployer, err := pAliyunDCDN.NewDeployer(&pAliyunDCDN.DeployerConfig{
|
deployer, err := pAliyunDCDN.NewDeployer(&pAliyunDCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -205,7 +205,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunESA:
|
case domain.DeploymentProviderTypeAliyunESA:
|
||||||
deployer, err := pAliyunESA.NewDeployer(&pAliyunESA.DeployerConfig{
|
deployer, err := pAliyunESA.NewDeployer(&pAliyunESA.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -214,7 +214,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunFC:
|
case domain.DeploymentProviderTypeAliyunFC:
|
||||||
deployer, err := pAliyunFC.NewDeployer(&pAliyunFC.DeployerConfig{
|
deployer, err := pAliyunFC.NewDeployer(&pAliyunFC.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -224,7 +224,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunLive:
|
case domain.DeploymentProviderTypeAliyunLive:
|
||||||
deployer, err := pAliyunLive.NewDeployer(&pAliyunLive.DeployerConfig{
|
deployer, err := pAliyunLive.NewDeployer(&pAliyunLive.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -233,7 +233,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunNLB:
|
case domain.DeploymentProviderTypeAliyunNLB:
|
||||||
deployer, err := pAliyunNLB.NewDeployer(&pAliyunNLB.DeployerConfig{
|
deployer, err := pAliyunNLB.NewDeployer(&pAliyunNLB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -244,7 +244,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunOSS:
|
case domain.DeploymentProviderTypeAliyunOSS:
|
||||||
deployer, err := pAliyunOSS.NewDeployer(&pAliyunOSS.DeployerConfig{
|
deployer, err := pAliyunOSS.NewDeployer(&pAliyunOSS.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -254,7 +254,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunVOD:
|
case domain.DeploymentProviderTypeAliyunVOD:
|
||||||
deployer, err := pAliyunVOD.NewDeployer(&pAliyunVOD.DeployerConfig{
|
deployer, err := pAliyunVOD.NewDeployer(&pAliyunVOD.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -263,7 +263,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAliyunWAF:
|
case domain.DeploymentProviderTypeAliyunWAF:
|
||||||
deployer, err := pAliyunWAF.NewDeployer(&pAliyunWAF.DeployerConfig{
|
deployer, err := pAliyunWAF.NewDeployer(&pAliyunWAF.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -279,7 +279,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeAWSACM, domain.DeployProviderTypeAWSCloudFront:
|
case domain.DeploymentProviderTypeAWSACM, domain.DeploymentProviderTypeAWSCloudFront:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForAWS{}
|
access := domain.AccessConfigForAWS{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -287,7 +287,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeAWSACM:
|
case domain.DeploymentProviderTypeAWSACM:
|
||||||
deployer, err := pAWSACM.NewDeployer(&pAWSACM.DeployerConfig{
|
deployer, err := pAWSACM.NewDeployer(&pAWSACM.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -295,7 +295,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeAWSCloudFront:
|
case domain.DeploymentProviderTypeAWSCloudFront:
|
||||||
deployer, err := pAWSCloudFront.NewDeployer(&pAWSCloudFront.DeployerConfig{
|
deployer, err := pAWSCloudFront.NewDeployer(&pAWSCloudFront.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -309,7 +309,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeAzureKeyVault:
|
case domain.DeploymentProviderTypeAzureKeyVault:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForAzure{}
|
access := domain.AccessConfigForAzure{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -317,7 +317,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeAzureKeyVault:
|
case domain.DeploymentProviderTypeAzureKeyVault:
|
||||||
deployer, err := pAzureKeyVault.NewDeployer(&pAzureKeyVault.DeployerConfig{
|
deployer, err := pAzureKeyVault.NewDeployer(&pAzureKeyVault.DeployerConfig{
|
||||||
TenantId: access.TenantId,
|
TenantId: access.TenantId,
|
||||||
ClientId: access.ClientId,
|
ClientId: access.ClientId,
|
||||||
@ -333,7 +333,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaiduCloudAppBLB, domain.DeployProviderTypeBaiduCloudBLB, domain.DeployProviderTypeBaiduCloudCDN, domain.DeployProviderTypeBaiduCloudCert:
|
case domain.DeploymentProviderTypeBaiduCloudAppBLB, domain.DeploymentProviderTypeBaiduCloudBLB, domain.DeploymentProviderTypeBaiduCloudCDN, domain.DeploymentProviderTypeBaiduCloudCert:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBaiduCloud{}
|
access := domain.AccessConfigForBaiduCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -341,7 +341,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeBaiduCloudAppBLB:
|
case domain.DeploymentProviderTypeBaiduCloudAppBLB:
|
||||||
deployer, err := pBaiduCloudAppBLB.NewDeployer(&pBaiduCloudAppBLB.DeployerConfig{
|
deployer, err := pBaiduCloudAppBLB.NewDeployer(&pBaiduCloudAppBLB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -353,7 +353,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaiduCloudBLB:
|
case domain.DeploymentProviderTypeBaiduCloudBLB:
|
||||||
deployer, err := pBaiduCloudBLB.NewDeployer(&pBaiduCloudBLB.DeployerConfig{
|
deployer, err := pBaiduCloudBLB.NewDeployer(&pBaiduCloudBLB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -365,7 +365,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaiduCloudCDN:
|
case domain.DeploymentProviderTypeBaiduCloudCDN:
|
||||||
deployer, err := pBaiduCloudCDN.NewDeployer(&pBaiduCloudCDN.DeployerConfig{
|
deployer, err := pBaiduCloudCDN.NewDeployer(&pBaiduCloudCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -373,7 +373,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaiduCloudCert:
|
case domain.DeploymentProviderTypeBaiduCloudCert:
|
||||||
deployer, err := pBaiduCloudCert.NewDeployer(&pBaiduCloudCert.DeployerConfig{
|
deployer, err := pBaiduCloudCert.NewDeployer(&pBaiduCloudCert.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -385,7 +385,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaishanCDN:
|
case domain.DeploymentProviderTypeBaishanCDN:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBaishan{}
|
access := domain.AccessConfigForBaishan{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -393,7 +393,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeBaishanCDN:
|
case domain.DeploymentProviderTypeBaishanCDN:
|
||||||
deployer, err := pBaishanCDN.NewDeployer(&pBaishanCDN.DeployerConfig{
|
deployer, err := pBaishanCDN.NewDeployer(&pBaishanCDN.DeployerConfig{
|
||||||
ApiToken: access.ApiToken,
|
ApiToken: access.ApiToken,
|
||||||
Domain: maputil.GetString(options.ProviderDeployConfig, "domain"),
|
Domain: maputil.GetString(options.ProviderDeployConfig, "domain"),
|
||||||
@ -406,7 +406,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaotaPanelConsole, domain.DeployProviderTypeBaotaPanelSite:
|
case domain.DeploymentProviderTypeBaotaPanelConsole, domain.DeploymentProviderTypeBaotaPanelSite:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBaotaPanel{}
|
access := domain.AccessConfigForBaotaPanel{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -414,7 +414,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeBaotaPanelConsole:
|
case domain.DeploymentProviderTypeBaotaPanelConsole:
|
||||||
deployer, err := pBaotaPanelConsole.NewDeployer(&pBaotaPanelConsole.DeployerConfig{
|
deployer, err := pBaotaPanelConsole.NewDeployer(&pBaotaPanelConsole.DeployerConfig{
|
||||||
ApiUrl: access.ApiUrl,
|
ApiUrl: access.ApiUrl,
|
||||||
ApiKey: access.ApiKey,
|
ApiKey: access.ApiKey,
|
||||||
@ -423,7 +423,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeBaotaPanelSite:
|
case domain.DeploymentProviderTypeBaotaPanelSite:
|
||||||
deployer, err := pBaotaPanelSite.NewDeployer(&pBaotaPanelSite.DeployerConfig{
|
deployer, err := pBaotaPanelSite.NewDeployer(&pBaotaPanelSite.DeployerConfig{
|
||||||
ApiUrl: access.ApiUrl,
|
ApiUrl: access.ApiUrl,
|
||||||
ApiKey: access.ApiKey,
|
ApiKey: access.ApiKey,
|
||||||
@ -439,7 +439,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeBunnyCDN:
|
case domain.DeploymentProviderTypeBunnyCDN:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBunny{}
|
access := domain.AccessConfigForBunny{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -454,7 +454,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeBytePlusCDN:
|
case domain.DeploymentProviderTypeBytePlusCDN:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForBytePlus{}
|
access := domain.AccessConfigForBytePlus{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -462,7 +462,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeBytePlusCDN:
|
case domain.DeploymentProviderTypeBytePlusCDN:
|
||||||
deployer, err := pBytePlusCDN.NewDeployer(&pBytePlusCDN.DeployerConfig{
|
deployer, err := pBytePlusCDN.NewDeployer(&pBytePlusCDN.DeployerConfig{
|
||||||
AccessKey: access.AccessKey,
|
AccessKey: access.AccessKey,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -475,7 +475,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeCacheFly:
|
case domain.DeploymentProviderTypeCacheFly:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForCacheFly{}
|
access := domain.AccessConfigForCacheFly{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -488,7 +488,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeCdnfly:
|
case domain.DeploymentProviderTypeCdnfly:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForCdnfly{}
|
access := domain.AccessConfigForCdnfly{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -506,7 +506,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeDogeCloudCDN:
|
case domain.DeploymentProviderTypeDogeCloudCDN:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForDogeCloud{}
|
access := domain.AccessConfigForDogeCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -521,7 +521,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeEdgioApplications:
|
case domain.DeploymentProviderTypeEdgioApplications:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForEdgio{}
|
access := domain.AccessConfigForEdgio{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -536,7 +536,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeGcoreCDN:
|
case domain.DeploymentProviderTypeGcoreCDN:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForGcore{}
|
access := domain.AccessConfigForGcore{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -544,7 +544,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeGcoreCDN:
|
case domain.DeploymentProviderTypeGcoreCDN:
|
||||||
deployer, err := pGcoreCDN.NewDeployer(&pGcoreCDN.DeployerConfig{
|
deployer, err := pGcoreCDN.NewDeployer(&pGcoreCDN.DeployerConfig{
|
||||||
ApiToken: access.ApiToken,
|
ApiToken: access.ApiToken,
|
||||||
ResourceId: maputil.GetInt64(options.ProviderDeployConfig, "resourceId"),
|
ResourceId: maputil.GetInt64(options.ProviderDeployConfig, "resourceId"),
|
||||||
@ -556,7 +556,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeHuaweiCloudCDN, domain.DeployProviderTypeHuaweiCloudELB, domain.DeployProviderTypeHuaweiCloudSCM, domain.DeployProviderTypeHuaweiCloudWAF:
|
case domain.DeploymentProviderTypeHuaweiCloudCDN, domain.DeploymentProviderTypeHuaweiCloudELB, domain.DeploymentProviderTypeHuaweiCloudSCM, domain.DeploymentProviderTypeHuaweiCloudWAF:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForHuaweiCloud{}
|
access := domain.AccessConfigForHuaweiCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -564,7 +564,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeHuaweiCloudCDN:
|
case domain.DeploymentProviderTypeHuaweiCloudCDN:
|
||||||
deployer, err := pHuaweiCloudCDN.NewDeployer(&pHuaweiCloudCDN.DeployerConfig{
|
deployer, err := pHuaweiCloudCDN.NewDeployer(&pHuaweiCloudCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -573,7 +573,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeHuaweiCloudELB:
|
case domain.DeploymentProviderTypeHuaweiCloudELB:
|
||||||
deployer, err := pHuaweiCloudELB.NewDeployer(&pHuaweiCloudELB.DeployerConfig{
|
deployer, err := pHuaweiCloudELB.NewDeployer(&pHuaweiCloudELB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -585,14 +585,14 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeHuaweiCloudSCM:
|
case domain.DeploymentProviderTypeHuaweiCloudSCM:
|
||||||
deployer, err := pHuaweiCloudSCM.NewDeployer(&pHuaweiCloudSCM.DeployerConfig{
|
deployer, err := pHuaweiCloudSCM.NewDeployer(&pHuaweiCloudSCM.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeHuaweiCloudWAF:
|
case domain.DeploymentProviderTypeHuaweiCloudWAF:
|
||||||
deployer, err := pHuaweiCloudWAF.NewDeployer(&pHuaweiCloudWAF.DeployerConfig{
|
deployer, err := pHuaweiCloudWAF.NewDeployer(&pHuaweiCloudWAF.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
SecretAccessKey: access.SecretAccessKey,
|
SecretAccessKey: access.SecretAccessKey,
|
||||||
@ -608,7 +608,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeJDCloudALB, domain.DeployProviderTypeJDCloudCDN, domain.DeployProviderTypeJDCloudLive, domain.DeployProviderTypeJDCloudVOD:
|
case domain.DeploymentProviderTypeJDCloudALB, domain.DeploymentProviderTypeJDCloudCDN, domain.DeploymentProviderTypeJDCloudLive, domain.DeploymentProviderTypeJDCloudVOD:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForJDCloud{}
|
access := domain.AccessConfigForJDCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -616,7 +616,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeJDCloudALB:
|
case domain.DeploymentProviderTypeJDCloudALB:
|
||||||
deployer, err := pJDCloudALB.NewDeployer(&pJDCloudALB.DeployerConfig{
|
deployer, err := pJDCloudALB.NewDeployer(&pJDCloudALB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -627,7 +627,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeJDCloudCDN:
|
case domain.DeploymentProviderTypeJDCloudCDN:
|
||||||
deployer, err := pJDCloudCDN.NewDeployer(&pJDCloudCDN.DeployerConfig{
|
deployer, err := pJDCloudCDN.NewDeployer(&pJDCloudCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -635,7 +635,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeJDCloudLive:
|
case domain.DeploymentProviderTypeJDCloudLive:
|
||||||
deployer, err := pJDCloudLive.NewDeployer(&pJDCloudLive.DeployerConfig{
|
deployer, err := pJDCloudLive.NewDeployer(&pJDCloudLive.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -643,7 +643,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeJDCloudVOD:
|
case domain.DeploymentProviderTypeJDCloudVOD:
|
||||||
deployer, err := pJDCloudVOD.NewDeployer(&pJDCloudVOD.DeployerConfig{
|
deployer, err := pJDCloudVOD.NewDeployer(&pJDCloudVOD.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -656,7 +656,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeLocal:
|
case domain.DeploymentProviderTypeLocal:
|
||||||
{
|
{
|
||||||
deployer, err := pLocal.NewDeployer(&pLocal.DeployerConfig{
|
deployer, err := pLocal.NewDeployer(&pLocal.DeployerConfig{
|
||||||
ShellEnv: pLocal.ShellEnvType(maputil.GetString(options.ProviderDeployConfig, "shellEnv")),
|
ShellEnv: pLocal.ShellEnvType(maputil.GetString(options.ProviderDeployConfig, "shellEnv")),
|
||||||
@ -673,7 +673,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeKubernetesSecret:
|
case domain.DeploymentProviderTypeKubernetesSecret:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForKubernetes{}
|
access := domain.AccessConfigForKubernetes{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -691,7 +691,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeQiniuCDN, domain.DeployProviderTypeQiniuKodo, domain.DeployProviderTypeQiniuPili:
|
case domain.DeploymentProviderTypeQiniuCDN, domain.DeploymentProviderTypeQiniuKodo, domain.DeploymentProviderTypeQiniuPili:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForQiniu{}
|
access := domain.AccessConfigForQiniu{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -699,7 +699,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeQiniuCDN, domain.DeployProviderTypeQiniuKodo:
|
case domain.DeploymentProviderTypeQiniuCDN, domain.DeploymentProviderTypeQiniuKodo:
|
||||||
deployer, err := pQiniuCDN.NewDeployer(&pQiniuCDN.DeployerConfig{
|
deployer, err := pQiniuCDN.NewDeployer(&pQiniuCDN.DeployerConfig{
|
||||||
AccessKey: access.AccessKey,
|
AccessKey: access.AccessKey,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -707,7 +707,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeQiniuPili:
|
case domain.DeploymentProviderTypeQiniuPili:
|
||||||
deployer, err := pQiniuPili.NewDeployer(&pQiniuPili.DeployerConfig{
|
deployer, err := pQiniuPili.NewDeployer(&pQiniuPili.DeployerConfig{
|
||||||
AccessKey: access.AccessKey,
|
AccessKey: access.AccessKey,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -721,7 +721,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeRainYunRCDN:
|
case domain.DeploymentProviderTypeRainYunRCDN:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForRainYun{}
|
access := domain.AccessConfigForRainYun{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -729,7 +729,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeTencentCloudCDN:
|
case domain.DeploymentProviderTypeTencentCloudCDN:
|
||||||
deployer, err := pRainYunRCDN.NewDeployer(&pRainYunRCDN.DeployerConfig{
|
deployer, err := pRainYunRCDN.NewDeployer(&pRainYunRCDN.DeployerConfig{
|
||||||
ApiKey: access.ApiKey,
|
ApiKey: access.ApiKey,
|
||||||
InstanceId: maputil.GetInt32(options.ProviderDeployConfig, "instanceId"),
|
InstanceId: maputil.GetInt32(options.ProviderDeployConfig, "instanceId"),
|
||||||
@ -742,7 +742,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeSafeLine:
|
case domain.DeploymentProviderTypeSafeLine:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForSafeLine{}
|
access := domain.AccessConfigForSafeLine{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -759,7 +759,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeSSH:
|
case domain.DeploymentProviderTypeSSH:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForSSH{}
|
access := domain.AccessConfigForSSH{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -787,7 +787,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
return deployer, err
|
return deployer, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudCDN, domain.DeployProviderTypeTencentCloudCLB, domain.DeployProviderTypeTencentCloudCOS, domain.DeployProviderTypeTencentCloudCSS, domain.DeployProviderTypeTencentCloudECDN, domain.DeployProviderTypeTencentCloudEO, domain.DeployProviderTypeTencentCloudSCF, domain.DeployProviderTypeTencentCloudSSL, domain.DeployProviderTypeTencentCloudSSLDeploy, domain.DeployProviderTypeTencentCloudVOD, domain.DeployProviderTypeTencentCloudWAF:
|
case domain.DeploymentProviderTypeTencentCloudCDN, domain.DeploymentProviderTypeTencentCloudCLB, domain.DeploymentProviderTypeTencentCloudCOS, domain.DeploymentProviderTypeTencentCloudCSS, domain.DeploymentProviderTypeTencentCloudECDN, domain.DeploymentProviderTypeTencentCloudEO, domain.DeploymentProviderTypeTencentCloudSCF, domain.DeploymentProviderTypeTencentCloudSSL, domain.DeploymentProviderTypeTencentCloudSSLDeploy, domain.DeploymentProviderTypeTencentCloudVOD, domain.DeploymentProviderTypeTencentCloudWAF:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForTencentCloud{}
|
access := domain.AccessConfigForTencentCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -795,7 +795,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeTencentCloudCDN:
|
case domain.DeploymentProviderTypeTencentCloudCDN:
|
||||||
deployer, err := pTencentCloudCDN.NewDeployer(&pTencentCloudCDN.DeployerConfig{
|
deployer, err := pTencentCloudCDN.NewDeployer(&pTencentCloudCDN.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -803,7 +803,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudCLB:
|
case domain.DeploymentProviderTypeTencentCloudCLB:
|
||||||
deployer, err := pTencentCloudCLB.NewDeployer(&pTencentCloudCLB.DeployerConfig{
|
deployer, err := pTencentCloudCLB.NewDeployer(&pTencentCloudCLB.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -815,7 +815,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudCOS:
|
case domain.DeploymentProviderTypeTencentCloudCOS:
|
||||||
deployer, err := pTencentCloudCOS.NewDeployer(&pTencentCloudCOS.DeployerConfig{
|
deployer, err := pTencentCloudCOS.NewDeployer(&pTencentCloudCOS.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -825,7 +825,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudCSS:
|
case domain.DeploymentProviderTypeTencentCloudCSS:
|
||||||
deployer, err := pTencentCloudCSS.NewDeployer(&pTencentCloudCSS.DeployerConfig{
|
deployer, err := pTencentCloudCSS.NewDeployer(&pTencentCloudCSS.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -833,7 +833,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudECDN:
|
case domain.DeploymentProviderTypeTencentCloudECDN:
|
||||||
deployer, err := pTencentCloudECDN.NewDeployer(&pTencentCloudECDN.DeployerConfig{
|
deployer, err := pTencentCloudECDN.NewDeployer(&pTencentCloudECDN.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -841,7 +841,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudEO:
|
case domain.DeploymentProviderTypeTencentCloudEO:
|
||||||
deployer, err := pTencentCloudEO.NewDeployer(&pTencentCloudEO.DeployerConfig{
|
deployer, err := pTencentCloudEO.NewDeployer(&pTencentCloudEO.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -850,7 +850,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudSCF:
|
case domain.DeploymentProviderTypeTencentCloudSCF:
|
||||||
deployer, err := pTencentCloudSCF.NewDeployer(&pTencentCloudSCF.DeployerConfig{
|
deployer, err := pTencentCloudSCF.NewDeployer(&pTencentCloudSCF.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -859,14 +859,14 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudSSL:
|
case domain.DeploymentProviderTypeTencentCloudSSL:
|
||||||
deployer, err := pTencentCloudSSL.NewDeployer(&pTencentCloudSSL.DeployerConfig{
|
deployer, err := pTencentCloudSSL.NewDeployer(&pTencentCloudSSL.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudSSLDeploy:
|
case domain.DeploymentProviderTypeTencentCloudSSLDeploy:
|
||||||
deployer, err := pTencentCloudSSLDeploy.NewDeployer(&pTencentCloudSSLDeploy.DeployerConfig{
|
deployer, err := pTencentCloudSSLDeploy.NewDeployer(&pTencentCloudSSLDeploy.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -876,7 +876,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudVOD:
|
case domain.DeploymentProviderTypeTencentCloudVOD:
|
||||||
deployer, err := pTencentCloudVOD.NewDeployer(&pTencentCloudVOD.DeployerConfig{
|
deployer, err := pTencentCloudVOD.NewDeployer(&pTencentCloudVOD.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -885,7 +885,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeTencentCloudWAF:
|
case domain.DeploymentProviderTypeTencentCloudWAF:
|
||||||
deployer, err := pTencentCloudWAF.NewDeployer(&pTencentCloudWAF.DeployerConfig{
|
deployer, err := pTencentCloudWAF.NewDeployer(&pTencentCloudWAF.DeployerConfig{
|
||||||
SecretId: access.SecretId,
|
SecretId: access.SecretId,
|
||||||
SecretKey: access.SecretKey,
|
SecretKey: access.SecretKey,
|
||||||
@ -900,7 +900,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeUCloudUCDN, domain.DeployProviderTypeUCloudUS3:
|
case domain.DeploymentProviderTypeUCloudUCDN, domain.DeploymentProviderTypeUCloudUS3:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForUCloud{}
|
access := domain.AccessConfigForUCloud{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -908,7 +908,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeUCloudUCDN:
|
case domain.DeploymentProviderTypeUCloudUCDN:
|
||||||
deployer, err := pUCloudUCDN.NewDeployer(&pUCloudUCDN.DeployerConfig{
|
deployer, err := pUCloudUCDN.NewDeployer(&pUCloudUCDN.DeployerConfig{
|
||||||
PrivateKey: access.PrivateKey,
|
PrivateKey: access.PrivateKey,
|
||||||
PublicKey: access.PublicKey,
|
PublicKey: access.PublicKey,
|
||||||
@ -917,7 +917,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeUCloudUS3:
|
case domain.DeploymentProviderTypeUCloudUS3:
|
||||||
deployer, err := pUCloudUS3.NewDeployer(&pUCloudUS3.DeployerConfig{
|
deployer, err := pUCloudUS3.NewDeployer(&pUCloudUS3.DeployerConfig{
|
||||||
PrivateKey: access.PrivateKey,
|
PrivateKey: access.PrivateKey,
|
||||||
PublicKey: access.PublicKey,
|
PublicKey: access.PublicKey,
|
||||||
@ -933,7 +933,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeUpyunCDN, domain.DeployProviderTypeUpyunFile:
|
case domain.DeploymentProviderTypeUpyunCDN, domain.DeploymentProviderTypeUpyunFile:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForUpyun{}
|
access := domain.AccessConfigForUpyun{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -941,7 +941,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeUpyunCDN, domain.DeployProviderTypeUpyunFile:
|
case domain.DeploymentProviderTypeUpyunCDN, domain.DeploymentProviderTypeUpyunFile:
|
||||||
deployer, err := pUpyunCDN.NewDeployer(&pUpyunCDN.DeployerConfig{
|
deployer, err := pUpyunCDN.NewDeployer(&pUpyunCDN.DeployerConfig{
|
||||||
Username: access.Username,
|
Username: access.Username,
|
||||||
Password: access.Password,
|
Password: access.Password,
|
||||||
@ -954,7 +954,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineALB, domain.DeployProviderTypeVolcEngineCDN, domain.DeployProviderTypeVolcEngineCertCenter, domain.DeployProviderTypeVolcEngineCLB, domain.DeployProviderTypeVolcEngineDCDN, domain.DeployProviderTypeVolcEngineImageX, domain.DeployProviderTypeVolcEngineLive, domain.DeployProviderTypeVolcEngineTOS:
|
case domain.DeploymentProviderTypeVolcEngineALB, domain.DeploymentProviderTypeVolcEngineCDN, domain.DeploymentProviderTypeVolcEngineCertCenter, domain.DeploymentProviderTypeVolcEngineCLB, domain.DeploymentProviderTypeVolcEngineDCDN, domain.DeploymentProviderTypeVolcEngineImageX, domain.DeploymentProviderTypeVolcEngineLive, domain.DeploymentProviderTypeVolcEngineTOS:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForVolcEngine{}
|
access := domain.AccessConfigForVolcEngine{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -962,7 +962,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeVolcEngineALB:
|
case domain.DeploymentProviderTypeVolcEngineALB:
|
||||||
deployer, err := pVolcEngineALB.NewDeployer(&pVolcEngineALB.DeployerConfig{
|
deployer, err := pVolcEngineALB.NewDeployer(&pVolcEngineALB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -974,7 +974,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineCDN:
|
case domain.DeploymentProviderTypeVolcEngineCDN:
|
||||||
deployer, err := pVolcEngineCDN.NewDeployer(&pVolcEngineCDN.DeployerConfig{
|
deployer, err := pVolcEngineCDN.NewDeployer(&pVolcEngineCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -982,7 +982,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineCertCenter:
|
case domain.DeploymentProviderTypeVolcEngineCertCenter:
|
||||||
deployer, err := pVolcEngineCertCenter.NewDeployer(&pVolcEngineCertCenter.DeployerConfig{
|
deployer, err := pVolcEngineCertCenter.NewDeployer(&pVolcEngineCertCenter.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -990,7 +990,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineCLB:
|
case domain.DeploymentProviderTypeVolcEngineCLB:
|
||||||
deployer, err := pVolcEngineCLB.NewDeployer(&pVolcEngineCLB.DeployerConfig{
|
deployer, err := pVolcEngineCLB.NewDeployer(&pVolcEngineCLB.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -1001,7 +1001,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineDCDN:
|
case domain.DeploymentProviderTypeVolcEngineDCDN:
|
||||||
deployer, err := pVolcEngineDCDN.NewDeployer(&pVolcEngineDCDN.DeployerConfig{
|
deployer, err := pVolcEngineDCDN.NewDeployer(&pVolcEngineDCDN.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -1009,7 +1009,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineImageX:
|
case domain.DeploymentProviderTypeVolcEngineImageX:
|
||||||
deployer, err := pVolcEngineImageX.NewDeployer(&pVolcEngineImageX.DeployerConfig{
|
deployer, err := pVolcEngineImageX.NewDeployer(&pVolcEngineImageX.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -1019,7 +1019,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineLive:
|
case domain.DeploymentProviderTypeVolcEngineLive:
|
||||||
deployer, err := pVolcEngineLive.NewDeployer(&pVolcEngineLive.DeployerConfig{
|
deployer, err := pVolcEngineLive.NewDeployer(&pVolcEngineLive.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -1027,7 +1027,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
})
|
})
|
||||||
return deployer, err
|
return deployer, err
|
||||||
|
|
||||||
case domain.DeployProviderTypeVolcEngineTOS:
|
case domain.DeploymentProviderTypeVolcEngineTOS:
|
||||||
deployer, err := pVolcEngineTOS.NewDeployer(&pVolcEngineTOS.DeployerConfig{
|
deployer, err := pVolcEngineTOS.NewDeployer(&pVolcEngineTOS.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.SecretAccessKey,
|
AccessKeySecret: access.SecretAccessKey,
|
||||||
@ -1042,7 +1042,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeWangsuCDNPro:
|
case domain.DeploymentProviderTypeWangsuCDNPro:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForWangsu{}
|
access := domain.AccessConfigForWangsu{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
@ -1050,7 +1050,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
|
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.DeployProviderTypeWangsuCDNPro:
|
case domain.DeploymentProviderTypeWangsuCDNPro:
|
||||||
deployer, err := pWangsuCDNPro.NewDeployer(&pWangsuCDNPro.DeployerConfig{
|
deployer, err := pWangsuCDNPro.NewDeployer(&pWangsuCDNPro.DeployerConfig{
|
||||||
AccessKeyId: access.AccessKeyId,
|
AccessKeyId: access.AccessKeyId,
|
||||||
AccessKeySecret: access.AccessKeySecret,
|
AccessKeySecret: access.AccessKeySecret,
|
||||||
@ -1067,7 +1067,7 @@ func createDeployerProvider(options *deployerProviderOptions) (deployer.Deployer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
case domain.DeployProviderTypeWebhook:
|
case domain.DeploymentProviderTypeWebhook:
|
||||||
{
|
{
|
||||||
access := domain.AccessConfigForWebhook{}
|
access := domain.AccessConfigForWebhook{}
|
||||||
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
if err := maputil.Populate(options.ProviderAccessConfig, &access); err != nil {
|
||||||
|
@ -68,74 +68,74 @@ const (
|
|||||||
AccessProviderTypeZeroSSL = AccessProviderType("zerossl")
|
AccessProviderTypeZeroSSL = AccessProviderType("zerossl")
|
||||||
)
|
)
|
||||||
|
|
||||||
type ApplyCAProviderType string
|
type CAProviderType string
|
||||||
|
|
||||||
/*
|
/*
|
||||||
申请证书 CA 提供商常量值。
|
证书颁发机构提供商常量值。
|
||||||
短横线前的部分始终等于授权提供商类型。
|
短横线前的部分始终等于授权提供商类型。
|
||||||
|
|
||||||
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
const (
|
const (
|
||||||
ApplyCAProviderTypeBuypass = ApplyCAProviderType(AccessProviderTypeBuypass)
|
CAProviderTypeBuypass = CAProviderType(AccessProviderTypeBuypass)
|
||||||
ApplyCAProviderTypeGoogleTrustServices = ApplyCAProviderType(AccessProviderTypeGoogleTrustServices)
|
CAProviderTypeGoogleTrustServices = CAProviderType(AccessProviderTypeGoogleTrustServices)
|
||||||
ApplyCAProviderTypeLetsEncrypt = ApplyCAProviderType(AccessProviderTypeLetsEncrypt)
|
CAProviderTypeLetsEncrypt = CAProviderType(AccessProviderTypeLetsEncrypt)
|
||||||
ApplyCAProviderTypeLetsEncryptStaging = ApplyCAProviderType(AccessProviderTypeLetsEncryptStaging)
|
CAProviderTypeLetsEncryptStaging = CAProviderType(AccessProviderTypeLetsEncryptStaging)
|
||||||
ApplyCAProviderTypeSSLCom = ApplyCAProviderType(AccessProviderTypeSSLCOM)
|
CAProviderTypeSSLCom = CAProviderType(AccessProviderTypeSSLCOM)
|
||||||
ApplyCAProviderTypeZeroSSL = ApplyCAProviderType(AccessProviderTypeZeroSSL)
|
CAProviderTypeZeroSSL = CAProviderType(AccessProviderTypeZeroSSL)
|
||||||
)
|
)
|
||||||
|
|
||||||
type ApplyDNSProviderType string
|
type AcmeDns01ProviderType string
|
||||||
|
|
||||||
/*
|
/*
|
||||||
申请证书 DNS 提供商常量值。
|
ACME DNS-01 提供商常量值。
|
||||||
短横线前的部分始终等于授权提供商类型。
|
短横线前的部分始终等于授权提供商类型。
|
||||||
|
|
||||||
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
const (
|
const (
|
||||||
ApplyDNSProviderTypeACMEHttpReq = ApplyDNSProviderType(AccessProviderTypeACMEHttpReq)
|
AcmeDns01ProviderTypeACMEHttpReq = AcmeDns01ProviderType(AccessProviderTypeACMEHttpReq)
|
||||||
ApplyDNSProviderTypeAliyun = ApplyDNSProviderType(AccessProviderTypeAliyun) // 兼容旧值,等同于 [ApplyDNSProviderTypeAliyunDNS]
|
AcmeDns01ProviderTypeAliyun = AcmeDns01ProviderType(AccessProviderTypeAliyun) // 兼容旧值,等同于 [AcmeDns01ProviderTypeAliyunDNS]
|
||||||
ApplyDNSProviderTypeAliyunDNS = ApplyDNSProviderType(AccessProviderTypeAliyun + "-dns")
|
AcmeDns01ProviderTypeAliyunDNS = AcmeDns01ProviderType(AccessProviderTypeAliyun + "-dns")
|
||||||
ApplyDNSProviderTypeAWS = ApplyDNSProviderType(AccessProviderTypeAWS) // 兼容旧值,等同于 [ApplyDNSProviderTypeAWSRoute53]
|
AcmeDns01ProviderTypeAWS = AcmeDns01ProviderType(AccessProviderTypeAWS) // 兼容旧值,等同于 [AcmeDns01ProviderTypeAWSRoute53]
|
||||||
ApplyDNSProviderTypeAWSRoute53 = ApplyDNSProviderType(AccessProviderTypeAWS + "-route53")
|
AcmeDns01ProviderTypeAWSRoute53 = AcmeDns01ProviderType(AccessProviderTypeAWS + "-route53")
|
||||||
ApplyDNSProviderTypeAzure = ApplyDNSProviderType(AccessProviderTypeAzure) // 兼容旧值,等同于 [ApplyDNSProviderTypeAzure]
|
AcmeDns01ProviderTypeAzure = AcmeDns01ProviderType(AccessProviderTypeAzure) // 兼容旧值,等同于 [AcmeDns01ProviderTypeAzure]
|
||||||
ApplyDNSProviderTypeAzureDNS = ApplyDNSProviderType(AccessProviderTypeAzure + "-dns")
|
AcmeDns01ProviderTypeAzureDNS = AcmeDns01ProviderType(AccessProviderTypeAzure + "-dns")
|
||||||
ApplyDNSProviderTypeBaiduCloud = ApplyDNSProviderType(AccessProviderTypeBaiduCloud) // 兼容旧值,等同于 [ApplyDNSProviderTypeBaiduCloudDNS]
|
AcmeDns01ProviderTypeBaiduCloud = AcmeDns01ProviderType(AccessProviderTypeBaiduCloud) // 兼容旧值,等同于 [AcmeDns01ProviderTypeBaiduCloudDNS]
|
||||||
ApplyDNSProviderTypeBaiduCloudDNS = ApplyDNSProviderType(AccessProviderTypeBaiduCloud + "-dns")
|
AcmeDns01ProviderTypeBaiduCloudDNS = AcmeDns01ProviderType(AccessProviderTypeBaiduCloud + "-dns")
|
||||||
ApplyDNSProviderTypeBunny = ApplyDNSProviderType(AccessProviderTypeBunny)
|
AcmeDns01ProviderTypeBunny = AcmeDns01ProviderType(AccessProviderTypeBunny)
|
||||||
ApplyDNSProviderTypeCloudflare = ApplyDNSProviderType(AccessProviderTypeCloudflare)
|
AcmeDns01ProviderTypeCloudflare = AcmeDns01ProviderType(AccessProviderTypeCloudflare)
|
||||||
ApplyDNSProviderTypeClouDNS = ApplyDNSProviderType(AccessProviderTypeClouDNS)
|
AcmeDns01ProviderTypeClouDNS = AcmeDns01ProviderType(AccessProviderTypeClouDNS)
|
||||||
ApplyDNSProviderTypeCMCCCloud = ApplyDNSProviderType(AccessProviderTypeCMCCCloud)
|
AcmeDns01ProviderTypeCMCCCloud = AcmeDns01ProviderType(AccessProviderTypeCMCCCloud)
|
||||||
ApplyDNSProviderTypeDeSEC = ApplyDNSProviderType(AccessProviderTypeDeSEC)
|
AcmeDns01ProviderTypeDeSEC = AcmeDns01ProviderType(AccessProviderTypeDeSEC)
|
||||||
ApplyDNSProviderTypeDNSLA = ApplyDNSProviderType(AccessProviderTypeDNSLA)
|
AcmeDns01ProviderTypeDNSLA = AcmeDns01ProviderType(AccessProviderTypeDNSLA)
|
||||||
ApplyDNSProviderTypeDynv6 = ApplyDNSProviderType(AccessProviderTypeDynv6)
|
AcmeDns01ProviderTypeDynv6 = AcmeDns01ProviderType(AccessProviderTypeDynv6)
|
||||||
ApplyDNSProviderTypeGcore = ApplyDNSProviderType(AccessProviderTypeGcore)
|
AcmeDns01ProviderTypeGcore = AcmeDns01ProviderType(AccessProviderTypeGcore)
|
||||||
ApplyDNSProviderTypeGname = ApplyDNSProviderType(AccessProviderTypeGname)
|
AcmeDns01ProviderTypeGname = AcmeDns01ProviderType(AccessProviderTypeGname)
|
||||||
ApplyDNSProviderTypeGoDaddy = ApplyDNSProviderType(AccessProviderTypeGoDaddy)
|
AcmeDns01ProviderTypeGoDaddy = AcmeDns01ProviderType(AccessProviderTypeGoDaddy)
|
||||||
ApplyDNSProviderTypeHuaweiCloud = ApplyDNSProviderType(AccessProviderTypeHuaweiCloud) // 兼容旧值,等同于 [ApplyDNSProviderTypeHuaweiCloudDNS]
|
AcmeDns01ProviderTypeHuaweiCloud = AcmeDns01ProviderType(AccessProviderTypeHuaweiCloud) // 兼容旧值,等同于 [AcmeDns01ProviderTypeHuaweiCloudDNS]
|
||||||
ApplyDNSProviderTypeHuaweiCloudDNS = ApplyDNSProviderType(AccessProviderTypeHuaweiCloud + "-dns")
|
AcmeDns01ProviderTypeHuaweiCloudDNS = AcmeDns01ProviderType(AccessProviderTypeHuaweiCloud + "-dns")
|
||||||
ApplyDNSProviderTypeJDCloud = ApplyDNSProviderType(AccessProviderTypeJDCloud) // 兼容旧值,等同于 [ApplyDNSProviderTypeJDCloudDNS]
|
AcmeDns01ProviderTypeJDCloud = AcmeDns01ProviderType(AccessProviderTypeJDCloud) // 兼容旧值,等同于 [AcmeDns01ProviderTypeJDCloudDNS]
|
||||||
ApplyDNSProviderTypeJDCloudDNS = ApplyDNSProviderType(AccessProviderTypeJDCloud + "-dns")
|
AcmeDns01ProviderTypeJDCloudDNS = AcmeDns01ProviderType(AccessProviderTypeJDCloud + "-dns")
|
||||||
ApplyDNSProviderTypeNamecheap = ApplyDNSProviderType(AccessProviderTypeNamecheap)
|
AcmeDns01ProviderTypeNamecheap = AcmeDns01ProviderType(AccessProviderTypeNamecheap)
|
||||||
ApplyDNSProviderTypeNameDotCom = ApplyDNSProviderType(AccessProviderTypeNameDotCom)
|
AcmeDns01ProviderTypeNameDotCom = AcmeDns01ProviderType(AccessProviderTypeNameDotCom)
|
||||||
ApplyDNSProviderTypeNameSilo = ApplyDNSProviderType(AccessProviderTypeNameSilo)
|
AcmeDns01ProviderTypeNameSilo = AcmeDns01ProviderType(AccessProviderTypeNameSilo)
|
||||||
ApplyDNSProviderTypeNS1 = ApplyDNSProviderType(AccessProviderTypeNS1)
|
AcmeDns01ProviderTypeNS1 = AcmeDns01ProviderType(AccessProviderTypeNS1)
|
||||||
ApplyDNSProviderTypePorkbun = ApplyDNSProviderType(AccessProviderTypePorkbun)
|
AcmeDns01ProviderTypePorkbun = AcmeDns01ProviderType(AccessProviderTypePorkbun)
|
||||||
ApplyDNSProviderTypePowerDNS = ApplyDNSProviderType(AccessProviderTypePowerDNS)
|
AcmeDns01ProviderTypePowerDNS = AcmeDns01ProviderType(AccessProviderTypePowerDNS)
|
||||||
ApplyDNSProviderTypeRainYun = ApplyDNSProviderType(AccessProviderTypeRainYun)
|
AcmeDns01ProviderTypeRainYun = AcmeDns01ProviderType(AccessProviderTypeRainYun)
|
||||||
ApplyDNSProviderTypeTencentCloud = ApplyDNSProviderType(AccessProviderTypeTencentCloud) // 兼容旧值,等同于 [ApplyDNSProviderTypeTencentCloudDNS]
|
AcmeDns01ProviderTypeTencentCloud = AcmeDns01ProviderType(AccessProviderTypeTencentCloud) // 兼容旧值,等同于 [AcmeDns01ProviderTypeTencentCloudDNS]
|
||||||
ApplyDNSProviderTypeTencentCloudDNS = ApplyDNSProviderType(AccessProviderTypeTencentCloud + "-dns")
|
AcmeDns01ProviderTypeTencentCloudDNS = AcmeDns01ProviderType(AccessProviderTypeTencentCloud + "-dns")
|
||||||
ApplyDNSProviderTypeTencentCloudEO = ApplyDNSProviderType(AccessProviderTypeTencentCloud + "-eo")
|
AcmeDns01ProviderTypeTencentCloudEO = AcmeDns01ProviderType(AccessProviderTypeTencentCloud + "-eo")
|
||||||
ApplyDNSProviderTypeVercel = ApplyDNSProviderType(AccessProviderTypeVercel)
|
AcmeDns01ProviderTypeVercel = AcmeDns01ProviderType(AccessProviderTypeVercel)
|
||||||
ApplyDNSProviderTypeVolcEngine = ApplyDNSProviderType(AccessProviderTypeVolcEngine) // 兼容旧值,等同于 [ApplyDNSProviderTypeVolcEngineDNS]
|
AcmeDns01ProviderTypeVolcEngine = AcmeDns01ProviderType(AccessProviderTypeVolcEngine) // 兼容旧值,等同于 [AcmeDns01ProviderTypeVolcEngineDNS]
|
||||||
ApplyDNSProviderTypeVolcEngineDNS = ApplyDNSProviderType(AccessProviderTypeVolcEngine + "-dns")
|
AcmeDns01ProviderTypeVolcEngineDNS = AcmeDns01ProviderType(AccessProviderTypeVolcEngine + "-dns")
|
||||||
ApplyDNSProviderTypeWestcn = ApplyDNSProviderType(AccessProviderTypeWestcn)
|
AcmeDns01ProviderTypeWestcn = AcmeDns01ProviderType(AccessProviderTypeWestcn)
|
||||||
)
|
)
|
||||||
|
|
||||||
type DeployProviderType string
|
type DeploymentProviderType string
|
||||||
|
|
||||||
/*
|
/*
|
||||||
部署证书主机提供商常量值。
|
部署证书主机提供商常量值。
|
||||||
@ -145,83 +145,83 @@ type DeployProviderType string
|
|||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
const (
|
const (
|
||||||
DeployProviderType1PanelConsole = DeployProviderType(AccessProviderType1Panel + "-console")
|
DeploymentProviderType1PanelConsole = DeploymentProviderType(AccessProviderType1Panel + "-console")
|
||||||
DeployProviderType1PanelSite = DeployProviderType(AccessProviderType1Panel + "-site")
|
DeploymentProviderType1PanelSite = DeploymentProviderType(AccessProviderType1Panel + "-site")
|
||||||
DeployProviderTypeAliyunALB = DeployProviderType(AccessProviderTypeAliyun + "-alb")
|
DeploymentProviderTypeAliyunALB = DeploymentProviderType(AccessProviderTypeAliyun + "-alb")
|
||||||
DeployProviderTypeAliyunAPIGW = DeployProviderType(AccessProviderTypeAliyun + "-apigw")
|
DeploymentProviderTypeAliyunAPIGW = DeploymentProviderType(AccessProviderTypeAliyun + "-apigw")
|
||||||
DeployProviderTypeAliyunCAS = DeployProviderType(AccessProviderTypeAliyun + "-cas")
|
DeploymentProviderTypeAliyunCAS = DeploymentProviderType(AccessProviderTypeAliyun + "-cas")
|
||||||
DeployProviderTypeAliyunCASDeploy = DeployProviderType(AccessProviderTypeAliyun + "-casdeploy")
|
DeploymentProviderTypeAliyunCASDeploy = DeploymentProviderType(AccessProviderTypeAliyun + "-casdeploy")
|
||||||
DeployProviderTypeAliyunCDN = DeployProviderType(AccessProviderTypeAliyun + "-cdn")
|
DeploymentProviderTypeAliyunCDN = DeploymentProviderType(AccessProviderTypeAliyun + "-cdn")
|
||||||
DeployProviderTypeAliyunCLB = DeployProviderType(AccessProviderTypeAliyun + "-clb")
|
DeploymentProviderTypeAliyunCLB = DeploymentProviderType(AccessProviderTypeAliyun + "-clb")
|
||||||
DeployProviderTypeAliyunDCDN = DeployProviderType(AccessProviderTypeAliyun + "-dcdn")
|
DeploymentProviderTypeAliyunDCDN = DeploymentProviderType(AccessProviderTypeAliyun + "-dcdn")
|
||||||
DeployProviderTypeAliyunESA = DeployProviderType(AccessProviderTypeAliyun + "-esa")
|
DeploymentProviderTypeAliyunESA = DeploymentProviderType(AccessProviderTypeAliyun + "-esa")
|
||||||
DeployProviderTypeAliyunFC = DeployProviderType(AccessProviderTypeAliyun + "-fc")
|
DeploymentProviderTypeAliyunFC = DeploymentProviderType(AccessProviderTypeAliyun + "-fc")
|
||||||
DeployProviderTypeAliyunLive = DeployProviderType(AccessProviderTypeAliyun + "-live")
|
DeploymentProviderTypeAliyunLive = DeploymentProviderType(AccessProviderTypeAliyun + "-live")
|
||||||
DeployProviderTypeAliyunNLB = DeployProviderType(AccessProviderTypeAliyun + "-nlb")
|
DeploymentProviderTypeAliyunNLB = DeploymentProviderType(AccessProviderTypeAliyun + "-nlb")
|
||||||
DeployProviderTypeAliyunOSS = DeployProviderType(AccessProviderTypeAliyun + "-oss")
|
DeploymentProviderTypeAliyunOSS = DeploymentProviderType(AccessProviderTypeAliyun + "-oss")
|
||||||
DeployProviderTypeAliyunVOD = DeployProviderType(AccessProviderTypeAliyun + "-vod")
|
DeploymentProviderTypeAliyunVOD = DeploymentProviderType(AccessProviderTypeAliyun + "-vod")
|
||||||
DeployProviderTypeAliyunWAF = DeployProviderType(AccessProviderTypeAliyun + "-waf")
|
DeploymentProviderTypeAliyunWAF = DeploymentProviderType(AccessProviderTypeAliyun + "-waf")
|
||||||
DeployProviderTypeAWSACM = DeployProviderType(AccessProviderTypeAWS + "-acm")
|
DeploymentProviderTypeAWSACM = DeploymentProviderType(AccessProviderTypeAWS + "-acm")
|
||||||
DeployProviderTypeAWSCloudFront = DeployProviderType(AccessProviderTypeAWS + "-cloudfront")
|
DeploymentProviderTypeAWSCloudFront = DeploymentProviderType(AccessProviderTypeAWS + "-cloudfront")
|
||||||
DeployProviderTypeAzureKeyVault = DeployProviderType(AccessProviderTypeAzure + "-keyvault")
|
DeploymentProviderTypeAzureKeyVault = DeploymentProviderType(AccessProviderTypeAzure + "-keyvault")
|
||||||
DeployProviderTypeBaiduCloudAppBLB = DeployProviderType(AccessProviderTypeBaiduCloud + "-appblb")
|
DeploymentProviderTypeBaiduCloudAppBLB = DeploymentProviderType(AccessProviderTypeBaiduCloud + "-appblb")
|
||||||
DeployProviderTypeBaiduCloudBLB = DeployProviderType(AccessProviderTypeBaiduCloud + "-blb")
|
DeploymentProviderTypeBaiduCloudBLB = DeploymentProviderType(AccessProviderTypeBaiduCloud + "-blb")
|
||||||
DeployProviderTypeBaiduCloudCDN = DeployProviderType(AccessProviderTypeBaiduCloud + "-cdn")
|
DeploymentProviderTypeBaiduCloudCDN = DeploymentProviderType(AccessProviderTypeBaiduCloud + "-cdn")
|
||||||
DeployProviderTypeBaiduCloudCert = DeployProviderType(AccessProviderTypeBaiduCloud + "-cert")
|
DeploymentProviderTypeBaiduCloudCert = DeploymentProviderType(AccessProviderTypeBaiduCloud + "-cert")
|
||||||
DeployProviderTypeBaishanCDN = DeployProviderType(AccessProviderTypeBaishan + "-cdn")
|
DeploymentProviderTypeBaishanCDN = DeploymentProviderType(AccessProviderTypeBaishan + "-cdn")
|
||||||
DeployProviderTypeBaotaPanelConsole = DeployProviderType(AccessProviderTypeBaotaPanel + "-console")
|
DeploymentProviderTypeBaotaPanelConsole = DeploymentProviderType(AccessProviderTypeBaotaPanel + "-console")
|
||||||
DeployProviderTypeBaotaPanelSite = DeployProviderType(AccessProviderTypeBaotaPanel + "-site")
|
DeploymentProviderTypeBaotaPanelSite = DeploymentProviderType(AccessProviderTypeBaotaPanel + "-site")
|
||||||
DeployProviderTypeBunnyCDN = DeployProviderType(AccessProviderTypeBunny + "-cdn")
|
DeploymentProviderTypeBunnyCDN = DeploymentProviderType(AccessProviderTypeBunny + "-cdn")
|
||||||
DeployProviderTypeBytePlusCDN = DeployProviderType(AccessProviderTypeBytePlus + "-cdn")
|
DeploymentProviderTypeBytePlusCDN = DeploymentProviderType(AccessProviderTypeBytePlus + "-cdn")
|
||||||
DeployProviderTypeCacheFly = DeployProviderType(AccessProviderTypeCacheFly)
|
DeploymentProviderTypeCacheFly = DeploymentProviderType(AccessProviderTypeCacheFly)
|
||||||
DeployProviderTypeCdnfly = DeployProviderType(AccessProviderTypeCdnfly)
|
DeploymentProviderTypeCdnfly = DeploymentProviderType(AccessProviderTypeCdnfly)
|
||||||
DeployProviderTypeDogeCloudCDN = DeployProviderType(AccessProviderTypeDogeCloud + "-cdn")
|
DeploymentProviderTypeDogeCloudCDN = DeploymentProviderType(AccessProviderTypeDogeCloud + "-cdn")
|
||||||
DeployProviderTypeEdgioApplications = DeployProviderType(AccessProviderTypeEdgio + "-applications")
|
DeploymentProviderTypeEdgioApplications = DeploymentProviderType(AccessProviderTypeEdgio + "-applications")
|
||||||
DeployProviderTypeGcoreCDN = DeployProviderType(AccessProviderTypeGcore + "-cdn")
|
DeploymentProviderTypeGcoreCDN = DeploymentProviderType(AccessProviderTypeGcore + "-cdn")
|
||||||
DeployProviderTypeHuaweiCloudCDN = DeployProviderType(AccessProviderTypeHuaweiCloud + "-cdn")
|
DeploymentProviderTypeHuaweiCloudCDN = DeploymentProviderType(AccessProviderTypeHuaweiCloud + "-cdn")
|
||||||
DeployProviderTypeHuaweiCloudELB = DeployProviderType(AccessProviderTypeHuaweiCloud + "-elb")
|
DeploymentProviderTypeHuaweiCloudELB = DeploymentProviderType(AccessProviderTypeHuaweiCloud + "-elb")
|
||||||
DeployProviderTypeHuaweiCloudSCM = DeployProviderType(AccessProviderTypeHuaweiCloud + "-scm")
|
DeploymentProviderTypeHuaweiCloudSCM = DeploymentProviderType(AccessProviderTypeHuaweiCloud + "-scm")
|
||||||
DeployProviderTypeHuaweiCloudWAF = DeployProviderType(AccessProviderTypeHuaweiCloud + "-waf")
|
DeploymentProviderTypeHuaweiCloudWAF = DeploymentProviderType(AccessProviderTypeHuaweiCloud + "-waf")
|
||||||
DeployProviderTypeJDCloudALB = DeployProviderType(AccessProviderTypeJDCloud + "-alb")
|
DeploymentProviderTypeJDCloudALB = DeploymentProviderType(AccessProviderTypeJDCloud + "-alb")
|
||||||
DeployProviderTypeJDCloudCDN = DeployProviderType(AccessProviderTypeJDCloud + "-cdn")
|
DeploymentProviderTypeJDCloudCDN = DeploymentProviderType(AccessProviderTypeJDCloud + "-cdn")
|
||||||
DeployProviderTypeJDCloudLive = DeployProviderType(AccessProviderTypeJDCloud + "-live")
|
DeploymentProviderTypeJDCloudLive = DeploymentProviderType(AccessProviderTypeJDCloud + "-live")
|
||||||
DeployProviderTypeJDCloudVOD = DeployProviderType(AccessProviderTypeJDCloud + "-vod")
|
DeploymentProviderTypeJDCloudVOD = DeploymentProviderType(AccessProviderTypeJDCloud + "-vod")
|
||||||
DeployProviderTypeKubernetesSecret = DeployProviderType(AccessProviderTypeKubernetes + "-secret")
|
DeploymentProviderTypeKubernetesSecret = DeploymentProviderType(AccessProviderTypeKubernetes + "-secret")
|
||||||
DeployProviderTypeLocal = DeployProviderType(AccessProviderTypeLocal)
|
DeploymentProviderTypeLocal = DeploymentProviderType(AccessProviderTypeLocal)
|
||||||
DeployProviderTypeQiniuCDN = DeployProviderType(AccessProviderTypeQiniu + "-cdn")
|
DeploymentProviderTypeQiniuCDN = DeploymentProviderType(AccessProviderTypeQiniu + "-cdn")
|
||||||
DeployProviderTypeQiniuKodo = DeployProviderType(AccessProviderTypeQiniu + "-kodo")
|
DeploymentProviderTypeQiniuKodo = DeploymentProviderType(AccessProviderTypeQiniu + "-kodo")
|
||||||
DeployProviderTypeQiniuPili = DeployProviderType(AccessProviderTypeQiniu + "-pili")
|
DeploymentProviderTypeQiniuPili = DeploymentProviderType(AccessProviderTypeQiniu + "-pili")
|
||||||
DeployProviderTypeRainYunRCDN = DeployProviderType(AccessProviderTypeRainYun + "-rcdn")
|
DeploymentProviderTypeRainYunRCDN = DeploymentProviderType(AccessProviderTypeRainYun + "-rcdn")
|
||||||
DeployProviderTypeSafeLine = DeployProviderType(AccessProviderTypeSafeLine)
|
DeploymentProviderTypeSafeLine = DeploymentProviderType(AccessProviderTypeSafeLine)
|
||||||
DeployProviderTypeSSH = DeployProviderType(AccessProviderTypeSSH)
|
DeploymentProviderTypeSSH = DeploymentProviderType(AccessProviderTypeSSH)
|
||||||
DeployProviderTypeTencentCloudCDN = DeployProviderType(AccessProviderTypeTencentCloud + "-cdn")
|
DeploymentProviderTypeTencentCloudCDN = DeploymentProviderType(AccessProviderTypeTencentCloud + "-cdn")
|
||||||
DeployProviderTypeTencentCloudCLB = DeployProviderType(AccessProviderTypeTencentCloud + "-clb")
|
DeploymentProviderTypeTencentCloudCLB = DeploymentProviderType(AccessProviderTypeTencentCloud + "-clb")
|
||||||
DeployProviderTypeTencentCloudCOS = DeployProviderType(AccessProviderTypeTencentCloud + "-cos")
|
DeploymentProviderTypeTencentCloudCOS = DeploymentProviderType(AccessProviderTypeTencentCloud + "-cos")
|
||||||
DeployProviderTypeTencentCloudCSS = DeployProviderType(AccessProviderTypeTencentCloud + "-css")
|
DeploymentProviderTypeTencentCloudCSS = DeploymentProviderType(AccessProviderTypeTencentCloud + "-css")
|
||||||
DeployProviderTypeTencentCloudECDN = DeployProviderType(AccessProviderTypeTencentCloud + "-ecdn")
|
DeploymentProviderTypeTencentCloudECDN = DeploymentProviderType(AccessProviderTypeTencentCloud + "-ecdn")
|
||||||
DeployProviderTypeTencentCloudEO = DeployProviderType(AccessProviderTypeTencentCloud + "-eo")
|
DeploymentProviderTypeTencentCloudEO = DeploymentProviderType(AccessProviderTypeTencentCloud + "-eo")
|
||||||
DeployProviderTypeTencentCloudSCF = DeployProviderType(AccessProviderTypeTencentCloud + "-scf")
|
DeploymentProviderTypeTencentCloudSCF = DeploymentProviderType(AccessProviderTypeTencentCloud + "-scf")
|
||||||
DeployProviderTypeTencentCloudSSL = DeployProviderType(AccessProviderTypeTencentCloud + "-ssl")
|
DeploymentProviderTypeTencentCloudSSL = DeploymentProviderType(AccessProviderTypeTencentCloud + "-ssl")
|
||||||
DeployProviderTypeTencentCloudSSLDeploy = DeployProviderType(AccessProviderTypeTencentCloud + "-ssldeploy")
|
DeploymentProviderTypeTencentCloudSSLDeploy = DeploymentProviderType(AccessProviderTypeTencentCloud + "-ssldeploy")
|
||||||
DeployProviderTypeTencentCloudVOD = DeployProviderType(AccessProviderTypeTencentCloud + "-vod")
|
DeploymentProviderTypeTencentCloudVOD = DeploymentProviderType(AccessProviderTypeTencentCloud + "-vod")
|
||||||
DeployProviderTypeTencentCloudWAF = DeployProviderType(AccessProviderTypeTencentCloud + "-waf")
|
DeploymentProviderTypeTencentCloudWAF = DeploymentProviderType(AccessProviderTypeTencentCloud + "-waf")
|
||||||
DeployProviderTypeUCloudUCDN = DeployProviderType(AccessProviderTypeUCloud + "-ucdn")
|
DeploymentProviderTypeUCloudUCDN = DeploymentProviderType(AccessProviderTypeUCloud + "-ucdn")
|
||||||
DeployProviderTypeUCloudUS3 = DeployProviderType(AccessProviderTypeUCloud + "-us3")
|
DeploymentProviderTypeUCloudUS3 = DeploymentProviderType(AccessProviderTypeUCloud + "-us3")
|
||||||
DeployProviderTypeUpyunCDN = DeployProviderType(AccessProviderTypeUpyun + "-cdn")
|
DeploymentProviderTypeUpyunCDN = DeploymentProviderType(AccessProviderTypeUpyun + "-cdn")
|
||||||
DeployProviderTypeUpyunFile = DeployProviderType(AccessProviderTypeUpyun + "-file")
|
DeploymentProviderTypeUpyunFile = DeploymentProviderType(AccessProviderTypeUpyun + "-file")
|
||||||
DeployProviderTypeVolcEngineALB = DeployProviderType(AccessProviderTypeVolcEngine + "-alb")
|
DeploymentProviderTypeVolcEngineALB = DeploymentProviderType(AccessProviderTypeVolcEngine + "-alb")
|
||||||
DeployProviderTypeVolcEngineCDN = DeployProviderType(AccessProviderTypeVolcEngine + "-cdn")
|
DeploymentProviderTypeVolcEngineCDN = DeploymentProviderType(AccessProviderTypeVolcEngine + "-cdn")
|
||||||
DeployProviderTypeVolcEngineCertCenter = DeployProviderType(AccessProviderTypeVolcEngine + "-certcenter")
|
DeploymentProviderTypeVolcEngineCertCenter = DeploymentProviderType(AccessProviderTypeVolcEngine + "-certcenter")
|
||||||
DeployProviderTypeVolcEngineCLB = DeployProviderType(AccessProviderTypeVolcEngine + "-clb")
|
DeploymentProviderTypeVolcEngineCLB = DeploymentProviderType(AccessProviderTypeVolcEngine + "-clb")
|
||||||
DeployProviderTypeVolcEngineDCDN = DeployProviderType(AccessProviderTypeVolcEngine + "-dcdn")
|
DeploymentProviderTypeVolcEngineDCDN = DeploymentProviderType(AccessProviderTypeVolcEngine + "-dcdn")
|
||||||
DeployProviderTypeVolcEngineImageX = DeployProviderType(AccessProviderTypeVolcEngine + "-imagex")
|
DeploymentProviderTypeVolcEngineImageX = DeploymentProviderType(AccessProviderTypeVolcEngine + "-imagex")
|
||||||
DeployProviderTypeVolcEngineLive = DeployProviderType(AccessProviderTypeVolcEngine + "-live")
|
DeploymentProviderTypeVolcEngineLive = DeploymentProviderType(AccessProviderTypeVolcEngine + "-live")
|
||||||
DeployProviderTypeVolcEngineTOS = DeployProviderType(AccessProviderTypeVolcEngine + "-tos")
|
DeploymentProviderTypeVolcEngineTOS = DeploymentProviderType(AccessProviderTypeVolcEngine + "-tos")
|
||||||
DeployProviderTypeWangsuCDNPro = DeployProviderType(AccessProviderTypeWangsu + "-cdnpro")
|
DeploymentProviderTypeWangsuCDNPro = DeploymentProviderType(AccessProviderTypeWangsu + "-cdnpro")
|
||||||
DeployProviderTypeWebhook = DeployProviderType(AccessProviderTypeWebhook)
|
DeploymentProviderTypeWebhook = DeploymentProviderType(AccessProviderTypeWebhook)
|
||||||
)
|
)
|
||||||
|
|
||||||
type NotifyProviderType string
|
type NotificationProviderType string
|
||||||
|
|
||||||
/*
|
/*
|
||||||
消息通知提供商常量值。
|
消息通知提供商常量值。
|
||||||
@ -231,5 +231,5 @@ type NotifyProviderType string
|
|||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
const (
|
const (
|
||||||
NotifyProviderTypeWebhook = NotifyProviderType(AccessProviderTypeWebhook)
|
NotificationProviderTypeWebhook = NotificationProviderType(AccessProviderTypeWebhook)
|
||||||
)
|
)
|
||||||
|
@ -31,7 +31,7 @@ func NewWithWorkflowNode(config NotifierWithWorkflowNodeConfig) (Notifier, error
|
|||||||
|
|
||||||
nodeConfig := config.Node.GetConfigForNotify()
|
nodeConfig := config.Node.GetConfigForNotify()
|
||||||
options := ¬ifierProviderOptions{
|
options := ¬ifierProviderOptions{
|
||||||
Provider: domain.NotifyProviderType(nodeConfig.Provider),
|
Provider: domain.NotificationProviderType(nodeConfig.Provider),
|
||||||
ProviderAccessConfig: make(map[string]any),
|
ProviderAccessConfig: make(map[string]any),
|
||||||
ProviderNotifyConfig: nodeConfig.ProviderConfig,
|
ProviderNotifyConfig: nodeConfig.ProviderConfig,
|
||||||
}
|
}
|
||||||
|
@ -10,7 +10,7 @@ import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
type notifierProviderOptions struct {
|
type notifierProviderOptions struct {
|
||||||
Provider domain.NotifyProviderType
|
Provider domain.NotificationProviderType
|
||||||
ProviderAccessConfig map[string]any
|
ProviderAccessConfig map[string]any
|
||||||
ProviderNotifyConfig map[string]any
|
ProviderNotifyConfig map[string]any
|
||||||
}
|
}
|
||||||
@ -21,7 +21,7 @@ func createNotifierProvider(options *notifierProviderOptions) (notifier.Notifier
|
|||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
switch options.Provider {
|
switch options.Provider {
|
||||||
case domain.NotifyProviderTypeWebhook:
|
case domain.NotificationProviderTypeWebhook:
|
||||||
return pWebhook.NewNotifier(&pWebhook.NotifierConfig{
|
return pWebhook.NewNotifier(&pWebhook.NotifierConfig{
|
||||||
Url: maputil.GetString(options.ProviderAccessConfig, "url"),
|
Url: maputil.GetString(options.ProviderAccessConfig, "url"),
|
||||||
AllowInsecureConnections: maputil.GetBool(options.ProviderAccessConfig, "allowInsecureConnections"),
|
AllowInsecureConnections: maputil.GetBool(options.ProviderAccessConfig, "allowInsecureConnections"),
|
||||||
|
1
ui/public/imgs/providers/email.svg
Normal file
1
ui/public/imgs/providers/email.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M832 128H192a128 128 0 0 0-128 128v512a128 128 0 0 0 128 128h384v-64H192a64 64 0 0 1-64-64V310.4l384 206.08 384-206.72V768h64V256a128 128 0 0 0-128-128zM512 443.52L131.2 240A64 64 0 0 1 192 192h640a64 64 0 0 1 60.8 46.72z" fill="#616971"></path><path d="M640 896h64v-64h-64z m256-64v64h64v-64z m-128 64h64v-64h-64z" fill="#FF8910"></path></svg>
|
After Width: | Height: | Size: 500 B |
1
ui/public/imgs/providers/mattermost.svg
Normal file
1
ui/public/imgs/providers/mattermost.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M515.465911 0.01242C300.718451-1.427543 99.826634 133.353979 27.187509 347.877444c-90.654661 267.771091 52.898635 558.325595 320.665726 648.947257 267.771091 90.654661 558.325595-52.898635 648.947257-320.665726 73.698099-217.594386-7.327811-450.199385-183.932255-578.421077l5.375862 108.670197c88.097727 97.374488 122.87783 235.163933 79.006961 364.760588C831.811749 764.541694 615.912319 866.204071 415.1165 798.204826c-200.860818-67.966246-310.617986-279.83378-245.115676-473.23879 43.998865-129.949647 155.932977-218.494363 285.592631-241.915759L525.641648 0.268413A211.822535 211.822535 0 0 0 516.199892 0.044419h-0.79998zM665.996027 46.700215h-0.351991a12.193685 12.193685 0 0 0-4.959872 1.055973l0.063998-0.031999-0.159996 0.031999a14.076637 14.076637 0 0 0-4.63988 3.039921c-6.175841 6.047844-28.031277 35.327089-28.031277 35.327089L580.298238 145.097676l-55.454569 67.614256-95.231543 118.429944s-43.678873 54.526593-34.047122 121.629862c9.631751 67.166267 59.550464 99.838424 98.297464 112.990085 38.687002 13.087662 98.206466 17.407551 146.685215-30.047225C688.967434 488.258823 687.395475 418.372626 687.395475 418.372626l-3.711905-151.901081-2.975923-87.454744-2.011948-75.742046s0.415989-36.511058-0.863978-45.086836a13.914641 13.914641 0 0 0-1.53596-4.639881l0.031999 0.063999-0.255993-0.511987-0.287993-0.479988a11.878694 11.878694 0 0 0-9.759748-5.983845H665.996027z" fill="#0072C6"></path></svg>
|
After Width: | Height: | Size: 1.5 KiB |
1
ui/public/imgs/providers/telegram.svg
Normal file
1
ui/public/imgs/providers/telegram.svg
Normal file
@ -0,0 +1 @@
|
|||||||
|
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><path d="M679.424 746.862l84.005-395.996c7.424-34.852-12.581-48.567-35.438-40.009L234.277 501.138c-33.72 13.13-33.134 32-5.706 40.558l126.282 39.424 293.156-184.576c13.714-9.143 26.295-3.986 16.018 5.157L426.898 615.973l-9.143 130.304c13.13 0 18.871-5.706 25.71-12.581l61.696-59.429 128 94.282c23.442 13.129 40.01 6.29 46.3-21.724zM1024 512c0 282.843-229.157 512-512 512S0 794.843 0 512 229.157 0 512 0s512 229.157 512 512z" fill="#1296DB"></path></svg>
|
@ -3,9 +3,9 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { Avatar, Card, Col, Empty, Flex, Input, type InputRef, Row, Typography } from "antd";
|
import { Avatar, Card, Col, Empty, Flex, Input, type InputRef, Row, Typography } from "antd";
|
||||||
|
|
||||||
import Show from "@/components/Show";
|
import Show from "@/components/Show";
|
||||||
import { applyDNSProvidersMap } from "@/domain/provider";
|
import { acmeDns01ProvidersMap } from "@/domain/provider";
|
||||||
|
|
||||||
export type ApplyDNSProviderPickerProps = {
|
export type AcmeDns01ProviderPickerProps = {
|
||||||
className?: string;
|
className?: string;
|
||||||
style?: React.CSSProperties;
|
style?: React.CSSProperties;
|
||||||
autoFocus?: boolean;
|
autoFocus?: boolean;
|
||||||
@ -13,7 +13,7 @@ export type ApplyDNSProviderPickerProps = {
|
|||||||
onSelect?: (value: string) => void;
|
onSelect?: (value: string) => void;
|
||||||
};
|
};
|
||||||
|
|
||||||
const ApplyDNSProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: ApplyDNSProviderPickerProps) => {
|
const AcmeDns01ProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: AcmeDns01ProviderPickerProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
const [keyword, setKeyword] = useState<string>();
|
const [keyword, setKeyword] = useState<string>();
|
||||||
@ -25,7 +25,7 @@ const ApplyDNSProviderPicker = ({ className, style, autoFocus, placeholder, onSe
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const providers = useMemo(() => {
|
const providers = useMemo(() => {
|
||||||
return Array.from(applyDNSProvidersMap.values()).filter((provider) => {
|
return Array.from(acmeDns01ProvidersMap.values()).filter((provider) => {
|
||||||
if (keyword) {
|
if (keyword) {
|
||||||
const value = keyword.toLowerCase();
|
const value = keyword.toLowerCase();
|
||||||
return provider.type.toLowerCase().includes(value) || t(provider.name).toLowerCase().includes(value);
|
return provider.type.toLowerCase().includes(value) || t(provider.name).toLowerCase().includes(value);
|
||||||
@ -72,4 +72,4 @@ const ApplyDNSProviderPicker = ({ className, style, autoFocus, placeholder, onSe
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default memo(ApplyDNSProviderPicker);
|
export default memo(AcmeDns01ProviderPicker);
|
@ -2,21 +2,21 @@ import { memo, useEffect, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
||||||
|
|
||||||
import { type NotifyProvider, notifyProvidersMap } from "@/domain/provider";
|
import { type AcmeDns01Provider, acmeDns01ProvidersMap } from "@/domain/provider";
|
||||||
|
|
||||||
export type NotifyProviderSelectProps = Omit<
|
export type AcmeDns01ProviderSelectProps = Omit<
|
||||||
SelectProps,
|
SelectProps,
|
||||||
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
||||||
> & {
|
> & {
|
||||||
filter?: (record: NotifyProvider) => boolean;
|
filter?: (record: AcmeDns01Provider) => boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
const NotifyProviderSelect = ({ filter, ...props }: NotifyProviderSelectProps) => {
|
const AcmeDns01ProviderSelect = ({ filter, ...props }: AcmeDns01ProviderSelectProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: NotifyProvider }>>([]);
|
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: AcmeDns01Provider }>>([]);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const allItems = Array.from(notifyProvidersMap.values());
|
const allItems = Array.from(acmeDns01ProvidersMap.values());
|
||||||
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
||||||
setOptions(
|
setOptions(
|
||||||
filteredItems.map((item) => ({
|
filteredItems.map((item) => ({
|
||||||
@ -29,7 +29,7 @@ const NotifyProviderSelect = ({ filter, ...props }: NotifyProviderSelectProps) =
|
|||||||
}, [filter]);
|
}, [filter]);
|
||||||
|
|
||||||
const renderOption = (key: string) => {
|
const renderOption = (key: string) => {
|
||||||
const provider = notifyProvidersMap.get(key);
|
const provider = acmeDns01ProvidersMap.get(key);
|
||||||
return (
|
return (
|
||||||
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
||||||
<Avatar src={provider?.icon} size="small" />
|
<Avatar src={provider?.icon} size="small" />
|
||||||
@ -64,4 +64,4 @@ const NotifyProviderSelect = ({ filter, ...props }: NotifyProviderSelectProps) =
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default memo(NotifyProviderSelect);
|
export default memo(AcmeDns01ProviderSelect);
|
@ -2,28 +2,28 @@ import { memo, useEffect, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
||||||
|
|
||||||
import { type ApplyCAProvider, applyCAProvidersMap } from "@/domain/provider";
|
import { type CAProvider, caProvidersMap } from "@/domain/provider";
|
||||||
|
|
||||||
export type ApplyCAProviderSelectProps = Omit<
|
export type CAProviderSelectProps = Omit<
|
||||||
SelectProps,
|
SelectProps,
|
||||||
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
||||||
> & {
|
> & {
|
||||||
filter?: (record: ApplyCAProvider) => boolean;
|
filter?: (record: CAProvider) => boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
const ApplyCAProviderSelect = ({ filter, ...props }: ApplyCAProviderSelectProps) => {
|
const CAProviderSelect = ({ filter, ...props }: CAProviderSelectProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: ApplyCAProvider }>>([]);
|
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: CAProvider }>>([]);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const allItems = Array.from(applyCAProvidersMap.values());
|
const allItems = Array.from(caProvidersMap.values());
|
||||||
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
||||||
setOptions([
|
setOptions([
|
||||||
{
|
{
|
||||||
key: "",
|
key: "",
|
||||||
value: "",
|
value: "",
|
||||||
label: t("provider.default_ca_provider.label"),
|
label: t("provider.default_ca_provider.label"),
|
||||||
data: {} as ApplyCAProvider,
|
data: {} as CAProvider,
|
||||||
},
|
},
|
||||||
...filteredItems.map((item) => ({
|
...filteredItems.map((item) => ({
|
||||||
key: item.type,
|
key: item.type,
|
||||||
@ -45,7 +45,7 @@ const ApplyCAProviderSelect = ({ filter, ...props }: ApplyCAProviderSelectProps)
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const provider = applyCAProvidersMap.get(key);
|
const provider = caProvidersMap.get(key);
|
||||||
return (
|
return (
|
||||||
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
||||||
<Avatar src={provider?.icon} size="small" />
|
<Avatar src={provider?.icon} size="small" />
|
||||||
@ -80,4 +80,4 @@ const ApplyCAProviderSelect = ({ filter, ...props }: ApplyCAProviderSelectProps)
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default memo(ApplyCAProviderSelect);
|
export default memo(CAProviderSelect);
|
@ -3,9 +3,9 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { Avatar, Card, Col, Empty, Flex, Input, type InputRef, Row, Tabs, Tooltip, Typography } from "antd";
|
import { Avatar, Card, Col, Empty, Flex, Input, type InputRef, Row, Tabs, Tooltip, Typography } from "antd";
|
||||||
|
|
||||||
import Show from "@/components/Show";
|
import Show from "@/components/Show";
|
||||||
import { DEPLOY_CATEGORIES, deployProvidersMap } from "@/domain/provider";
|
import { DEPLOYMENT_CATEGORIES, deploymentProvidersMap } from "@/domain/provider";
|
||||||
|
|
||||||
export type DeployProviderPickerProps = {
|
export type DeploymentProviderPickerProps = {
|
||||||
className?: string;
|
className?: string;
|
||||||
style?: React.CSSProperties;
|
style?: React.CSSProperties;
|
||||||
autoFocus?: boolean;
|
autoFocus?: boolean;
|
||||||
@ -13,10 +13,10 @@ export type DeployProviderPickerProps = {
|
|||||||
onSelect?: (value: string) => void;
|
onSelect?: (value: string) => void;
|
||||||
};
|
};
|
||||||
|
|
||||||
const DeployProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: DeployProviderPickerProps) => {
|
const DeploymentProviderPicker = ({ className, style, autoFocus, placeholder, onSelect }: DeploymentProviderPickerProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
const [category, setCategory] = useState<string>(DEPLOY_CATEGORIES.ALL);
|
const [category, setCategory] = useState<string>(DEPLOYMENT_CATEGORIES.ALL);
|
||||||
|
|
||||||
const [keyword, setKeyword] = useState<string>();
|
const [keyword, setKeyword] = useState<string>();
|
||||||
const keywordInputRef = useRef<InputRef>(null);
|
const keywordInputRef = useRef<InputRef>(null);
|
||||||
@ -27,9 +27,9 @@ const DeployProviderPicker = ({ className, style, autoFocus, placeholder, onSele
|
|||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const providers = useMemo(() => {
|
const providers = useMemo(() => {
|
||||||
return Array.from(deployProvidersMap.values())
|
return Array.from(deploymentProvidersMap.values())
|
||||||
.filter((provider) => {
|
.filter((provider) => {
|
||||||
if (category && category !== DEPLOY_CATEGORIES.ALL) {
|
if (category && category !== DEPLOYMENT_CATEGORIES.ALL) {
|
||||||
return provider.category === category;
|
return provider.category === category;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -56,17 +56,17 @@ const DeployProviderPicker = ({ className, style, autoFocus, placeholder, onSele
|
|||||||
<div className="mt-4">
|
<div className="mt-4">
|
||||||
<Flex>
|
<Flex>
|
||||||
<Tabs
|
<Tabs
|
||||||
defaultActiveKey={DEPLOY_CATEGORIES.ALL}
|
defaultActiveKey={DEPLOYMENT_CATEGORIES.ALL}
|
||||||
items={[
|
items={[
|
||||||
DEPLOY_CATEGORIES.ALL,
|
DEPLOYMENT_CATEGORIES.ALL,
|
||||||
DEPLOY_CATEGORIES.CDN,
|
DEPLOYMENT_CATEGORIES.CDN,
|
||||||
DEPLOY_CATEGORIES.STORAGE,
|
DEPLOYMENT_CATEGORIES.STORAGE,
|
||||||
DEPLOY_CATEGORIES.LOADBALANCE,
|
DEPLOYMENT_CATEGORIES.LOADBALANCE,
|
||||||
DEPLOY_CATEGORIES.FIREWALL,
|
DEPLOYMENT_CATEGORIES.FIREWALL,
|
||||||
DEPLOY_CATEGORIES.AV,
|
DEPLOYMENT_CATEGORIES.AV,
|
||||||
DEPLOY_CATEGORIES.SERVERLESS,
|
DEPLOYMENT_CATEGORIES.SERVERLESS,
|
||||||
DEPLOY_CATEGORIES.WEBSITE,
|
DEPLOYMENT_CATEGORIES.WEBSITE,
|
||||||
DEPLOY_CATEGORIES.OTHER,
|
DEPLOYMENT_CATEGORIES.OTHER,
|
||||||
].map((key) => ({
|
].map((key) => ({
|
||||||
key: key,
|
key: key,
|
||||||
label: t(`provider.category.${key}`),
|
label: t(`provider.category.${key}`),
|
||||||
@ -110,4 +110,4 @@ const DeployProviderPicker = ({ className, style, autoFocus, placeholder, onSele
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default memo(DeployProviderPicker);
|
export default memo(DeploymentProviderPicker);
|
@ -2,21 +2,21 @@ import { memo, useEffect, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
||||||
|
|
||||||
import { type ApplyDNSProvider, applyDNSProvidersMap } from "@/domain/provider";
|
import { type DeploymentProvider, deploymentProvidersMap } from "@/domain/provider";
|
||||||
|
|
||||||
export type ApplyDNSProviderSelectProps = Omit<
|
export type DeploymentProviderSelectProps = Omit<
|
||||||
SelectProps,
|
SelectProps,
|
||||||
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
||||||
> & {
|
> & {
|
||||||
filter?: (record: ApplyDNSProvider) => boolean;
|
filter?: (record: DeploymentProvider) => boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
const ApplyDNSProviderSelect = ({ filter, ...props }: ApplyDNSProviderSelectProps) => {
|
const DeploymentProviderSelect = ({ filter, ...props }: DeploymentProviderSelectProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: ApplyDNSProvider }>>([]);
|
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: DeploymentProvider }>>([]);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const allItems = Array.from(applyDNSProvidersMap.values());
|
const allItems = Array.from(deploymentProvidersMap.values());
|
||||||
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
||||||
setOptions(
|
setOptions(
|
||||||
filteredItems.map((item) => ({
|
filteredItems.map((item) => ({
|
||||||
@ -29,7 +29,7 @@ const ApplyDNSProviderSelect = ({ filter, ...props }: ApplyDNSProviderSelectProp
|
|||||||
}, [filter]);
|
}, [filter]);
|
||||||
|
|
||||||
const renderOption = (key: string) => {
|
const renderOption = (key: string) => {
|
||||||
const provider = applyDNSProvidersMap.get(key);
|
const provider = deploymentProvidersMap.get(key);
|
||||||
return (
|
return (
|
||||||
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
||||||
<Avatar src={provider?.icon} size="small" />
|
<Avatar src={provider?.icon} size="small" />
|
||||||
@ -64,4 +64,4 @@ const ApplyDNSProviderSelect = ({ filter, ...props }: ApplyDNSProviderSelectProp
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default memo(ApplyDNSProviderSelect);
|
export default memo(DeploymentProviderSelect);
|
@ -2,21 +2,21 @@ import { memo, useEffect, useState } from "react";
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
import { Avatar, Select, type SelectProps, Space, Typography } from "antd";
|
||||||
|
|
||||||
import { type DeployProvider, deployProvidersMap } from "@/domain/provider";
|
import { type NotificationProvider, notificationProvidersMap } from "@/domain/provider";
|
||||||
|
|
||||||
export type DeployProviderSelectProps = Omit<
|
export type NotificationProviderSelectProps = Omit<
|
||||||
SelectProps,
|
SelectProps,
|
||||||
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
"filterOption" | "filterSort" | "labelRender" | "options" | "optionFilterProp" | "optionLabelProp" | "optionRender"
|
||||||
> & {
|
> & {
|
||||||
filter?: (record: DeployProvider) => boolean;
|
filter?: (record: NotificationProvider) => boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
const DeployProviderSelect = ({ filter, ...props }: DeployProviderSelectProps) => {
|
const NotificationProviderSelect = ({ filter, ...props }: NotificationProviderSelectProps) => {
|
||||||
const { t } = useTranslation();
|
const { t } = useTranslation();
|
||||||
|
|
||||||
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: DeployProvider }>>([]);
|
const [options, setOptions] = useState<Array<{ key: string; value: string; label: string; data: NotificationProvider }>>([]);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const allItems = Array.from(deployProvidersMap.values());
|
const allItems = Array.from(notificationProvidersMap.values());
|
||||||
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
const filteredItems = filter != null ? allItems.filter(filter) : allItems;
|
||||||
setOptions(
|
setOptions(
|
||||||
filteredItems.map((item) => ({
|
filteredItems.map((item) => ({
|
||||||
@ -29,7 +29,7 @@ const DeployProviderSelect = ({ filter, ...props }: DeployProviderSelectProps) =
|
|||||||
}, [filter]);
|
}, [filter]);
|
||||||
|
|
||||||
const renderOption = (key: string) => {
|
const renderOption = (key: string) => {
|
||||||
const provider = deployProvidersMap.get(key);
|
const provider = notificationProvidersMap.get(key);
|
||||||
return (
|
return (
|
||||||
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
<Space className="max-w-full grow overflow-hidden truncate" size={4}>
|
||||||
<Avatar src={provider?.icon} size="small" />
|
<Avatar src={provider?.icon} size="small" />
|
||||||
@ -64,4 +64,4 @@ const DeployProviderSelect = ({ filter, ...props }: DeployProviderSelectProps) =
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default memo(DeployProviderSelect);
|
export default memo(NotificationProviderSelect);
|
@ -31,10 +31,10 @@ import AccessEditModal from "@/components/access/AccessEditModal";
|
|||||||
import AccessSelect from "@/components/access/AccessSelect";
|
import AccessSelect from "@/components/access/AccessSelect";
|
||||||
import ModalForm from "@/components/ModalForm";
|
import ModalForm from "@/components/ModalForm";
|
||||||
import MultipleInput from "@/components/MultipleInput";
|
import MultipleInput from "@/components/MultipleInput";
|
||||||
import ApplyCAProviderSelect from "@/components/provider/ApplyCAProviderSelect";
|
import AcmeDns01ProviderSelect from "@/components/provider/AcmeDns01ProviderSelect";
|
||||||
import ApplyDNSProviderSelect from "@/components/provider/ApplyDNSProviderSelect";
|
import CAProviderSelect from "@/components/provider/CAProviderSelect";
|
||||||
import Show from "@/components/Show";
|
import Show from "@/components/Show";
|
||||||
import { ACCESS_USAGES, APPLY_DNS_PROVIDERS, accessProvidersMap, applyCAProvidersMap, applyDNSProvidersMap } from "@/domain/provider";
|
import { ACCESS_USAGES, ACME_DNS01_PROVIDERS, accessProvidersMap, acmeDns01ProvidersMap, caProvidersMap } from "@/domain/provider";
|
||||||
import { type WorkflowNodeConfigForApply } from "@/domain/workflow";
|
import { type WorkflowNodeConfigForApply } from "@/domain/workflow";
|
||||||
import { useAntdForm, useAntdFormName, useZustandShallowSelector } from "@/hooks";
|
import { useAntdForm, useAntdFormName, useZustandShallowSelector } from "@/hooks";
|
||||||
import { useAccessesStore } from "@/stores/access";
|
import { useAccessesStore } from "@/stores/access";
|
||||||
@ -99,7 +99,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
.refine((v) => {
|
.refine((v) => {
|
||||||
if (!fieldCAProvider) return true;
|
if (!fieldCAProvider) return true;
|
||||||
|
|
||||||
const provider = applyCAProvidersMap.get(fieldCAProvider);
|
const provider = caProvidersMap.get(fieldCAProvider);
|
||||||
return !!provider?.builtin || !!v;
|
return !!provider?.builtin || !!v;
|
||||||
}, t("workflow_node.apply.form.ca_provider_access.placeholder")),
|
}, t("workflow_node.apply.form.ca_provider_access.placeholder")),
|
||||||
caProviderConfig: z.any().nullish(),
|
caProviderConfig: z.any().nullish(),
|
||||||
@ -155,7 +155,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
// 如果对应多个(如 AWS 的 Route53、Lightsail,腾讯云的 DNS、EdgeOne 等),则显示。
|
// 如果对应多个(如 AWS 的 Route53、Lightsail,腾讯云的 DNS、EdgeOne 等),则显示。
|
||||||
if (fieldProviderAccessId) {
|
if (fieldProviderAccessId) {
|
||||||
const access = accesses.find((e) => e.id === fieldProviderAccessId);
|
const access = accesses.find((e) => e.id === fieldProviderAccessId);
|
||||||
const providers = Array.from(applyDNSProvidersMap.values()).filter((e) => e.provider === access?.provider);
|
const providers = Array.from(acmeDns01ProvidersMap.values()).filter((e) => e.provider === access?.provider);
|
||||||
setShowProvider(providers.length > 1);
|
setShowProvider(providers.length > 1);
|
||||||
} else {
|
} else {
|
||||||
setShowProvider(false);
|
setShowProvider(false);
|
||||||
@ -166,7 +166,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// 内置的 CA 提供商(如 Let's Encrypt)无需显示授权信息字段
|
// 内置的 CA 提供商(如 Let's Encrypt)无需显示授权信息字段
|
||||||
if (fieldCAProvider) {
|
if (fieldCAProvider) {
|
||||||
const provider = applyCAProvidersMap.get(fieldCAProvider);
|
const provider = caProvidersMap.get(fieldCAProvider);
|
||||||
setShowCAProviderAccess(!provider?.builtin);
|
setShowCAProviderAccess(!provider?.builtin);
|
||||||
} else {
|
} else {
|
||||||
setShowCAProviderAccess(false);
|
setShowCAProviderAccess(false);
|
||||||
@ -188,16 +188,16 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
NOTICE: If you add new child component, please keep ASCII order.
|
NOTICE: If you add new child component, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
switch (fieldProvider) {
|
switch (fieldProvider) {
|
||||||
case APPLY_DNS_PROVIDERS.AWS:
|
case ACME_DNS01_PROVIDERS.AWS:
|
||||||
case APPLY_DNS_PROVIDERS.AWS_ROUTE53:
|
case ACME_DNS01_PROVIDERS.AWS_ROUTE53:
|
||||||
return <ApplyNodeConfigFormAWSRoute53Config {...nestedFormProps} />;
|
return <ApplyNodeConfigFormAWSRoute53Config {...nestedFormProps} />;
|
||||||
case APPLY_DNS_PROVIDERS.HUAWEICLOUD:
|
case ACME_DNS01_PROVIDERS.HUAWEICLOUD:
|
||||||
case APPLY_DNS_PROVIDERS.HUAWEICLOUD_DNS:
|
case ACME_DNS01_PROVIDERS.HUAWEICLOUD_DNS:
|
||||||
return <ApplyNodeConfigFormHuaweiCloudDNSConfig {...nestedFormProps} />;
|
return <ApplyNodeConfigFormHuaweiCloudDNSConfig {...nestedFormProps} />;
|
||||||
case APPLY_DNS_PROVIDERS.JDCLOUD:
|
case ACME_DNS01_PROVIDERS.JDCLOUD:
|
||||||
case APPLY_DNS_PROVIDERS.JDCLOUD_DNS:
|
case ACME_DNS01_PROVIDERS.JDCLOUD_DNS:
|
||||||
return <ApplyNodeConfigFormJDCloudDNSConfig {...nestedFormProps} />;
|
return <ApplyNodeConfigFormJDCloudDNSConfig {...nestedFormProps} />;
|
||||||
case APPLY_DNS_PROVIDERS.TENCENTCLOUD_EO:
|
case ACME_DNS01_PROVIDERS.TENCENTCLOUD_EO:
|
||||||
return <ApplyNodeConfigFormTencentCloudEOConfig {...nestedFormProps} />;
|
return <ApplyNodeConfigFormTencentCloudEOConfig {...nestedFormProps} />;
|
||||||
}
|
}
|
||||||
}, [disabled, initialValues?.providerConfig, fieldProvider, nestedFormInst, nestedFormName]);
|
}, [disabled, initialValues?.providerConfig, fieldProvider, nestedFormInst, nestedFormName]);
|
||||||
@ -210,7 +210,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
formInst.setFieldValue("providerAccessId", initialValues?.providerAccessId);
|
formInst.setFieldValue("providerAccessId", initialValues?.providerAccessId);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
} else {
|
} else {
|
||||||
if (applyDNSProvidersMap.get(fieldProvider)?.provider !== applyDNSProvidersMap.get(value)?.provider) {
|
if (acmeDns01ProvidersMap.get(fieldProvider)?.provider !== acmeDns01ProvidersMap.get(value)?.provider) {
|
||||||
formInst.setFieldValue("providerAccessId", undefined);
|
formInst.setFieldValue("providerAccessId", undefined);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
}
|
}
|
||||||
@ -222,7 +222,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
|
|
||||||
// 切换授权信息时联动 DNS 提供商
|
// 切换授权信息时联动 DNS 提供商
|
||||||
const access = accesses.find((access) => access.id === value);
|
const access = accesses.find((access) => access.id === value);
|
||||||
const provider = Array.from(applyDNSProvidersMap.values()).find((provider) => provider.provider === access?.provider);
|
const provider = Array.from(acmeDns01ProvidersMap.values()).find((provider) => provider.provider === access?.provider);
|
||||||
if (fieldProvider !== provider?.type) {
|
if (fieldProvider !== provider?.type) {
|
||||||
formInst.setFieldValue("provider", provider?.type);
|
formInst.setFieldValue("provider", provider?.type);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
@ -243,7 +243,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
formInst.setFieldValue("caProviderAccessId", initialValues?.caProviderAccessId);
|
formInst.setFieldValue("caProviderAccessId", initialValues?.caProviderAccessId);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
} else {
|
} else {
|
||||||
if (applyCAProvidersMap.get(fieldCAProvider)?.provider !== applyCAProvidersMap.get(value!)?.provider) {
|
if (caProvidersMap.get(fieldCAProvider)?.provider !== caProvidersMap.get(value!)?.provider) {
|
||||||
formInst.setFieldValue("caProviderAccessId", undefined);
|
formInst.setFieldValue("caProviderAccessId", undefined);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
}
|
}
|
||||||
@ -328,7 +328,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
|
||||||
<Form.Item name="provider" label={t("workflow_node.apply.form.provider.label")} hidden={!showProvider} rules={[formRule]}>
|
<Form.Item name="provider" label={t("workflow_node.apply.form.provider.label")} hidden={!showProvider} rules={[formRule]}>
|
||||||
<ApplyDNSProviderSelect
|
<AcmeDns01ProviderSelect
|
||||||
disabled={!showProvider}
|
disabled={!showProvider}
|
||||||
filter={(record) => {
|
filter={(record) => {
|
||||||
if (fieldProviderAccessId) {
|
if (fieldProviderAccessId) {
|
||||||
@ -413,7 +413,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
</div>
|
</div>
|
||||||
</label>
|
</label>
|
||||||
<Form.Item name="caProvider" rules={[formRule]}>
|
<Form.Item name="caProvider" rules={[formRule]}>
|
||||||
<ApplyCAProviderSelect
|
<CAProviderSelect
|
||||||
allowClear
|
allowClear
|
||||||
placeholder={t("workflow_node.apply.form.ca_provider.placeholder")}
|
placeholder={t("workflow_node.apply.form.ca_provider.placeholder")}
|
||||||
showSearch
|
showSearch
|
||||||
@ -431,7 +431,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
</div>
|
</div>
|
||||||
<div className="text-right">
|
<div className="text-right">
|
||||||
<AccessEditModal
|
<AccessEditModal
|
||||||
data={{ provider: applyCAProvidersMap.get(fieldCAProvider!)?.provider }}
|
data={{ provider: caProvidersMap.get(fieldCAProvider!)?.provider }}
|
||||||
range="ca-only"
|
range="ca-only"
|
||||||
scene="add"
|
scene="add"
|
||||||
trigger={
|
trigger={
|
||||||
@ -454,7 +454,7 @@ const ApplyNodeConfigForm = forwardRef<ApplyNodeConfigFormInstance, ApplyNodeCon
|
|||||||
<AccessSelect
|
<AccessSelect
|
||||||
filter={(record) => {
|
filter={(record) => {
|
||||||
if (fieldCAProvider) {
|
if (fieldCAProvider) {
|
||||||
return applyCAProvidersMap.get(fieldCAProvider)?.provider === record.provider;
|
return caProvidersMap.get(fieldCAProvider)?.provider === record.provider;
|
||||||
}
|
}
|
||||||
|
|
||||||
const provider = accessProvidersMap.get(record.provider);
|
const provider = accessProvidersMap.get(record.provider);
|
||||||
|
@ -3,7 +3,7 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { Avatar, Flex, Typography } from "antd";
|
import { Avatar, Flex, Typography } from "antd";
|
||||||
import { produce } from "immer";
|
import { produce } from "immer";
|
||||||
|
|
||||||
import { deployProvidersMap } from "@/domain/provider";
|
import { deploymentProvidersMap } from "@/domain/provider";
|
||||||
import { type WorkflowNodeConfigForDeploy, WorkflowNodeType } from "@/domain/workflow";
|
import { type WorkflowNodeConfigForDeploy, WorkflowNodeType } from "@/domain/workflow";
|
||||||
import { useZustandShallowSelector } from "@/hooks";
|
import { useZustandShallowSelector } from "@/hooks";
|
||||||
import { useWorkflowStore } from "@/stores/workflow";
|
import { useWorkflowStore } from "@/stores/workflow";
|
||||||
@ -43,7 +43,7 @@ const DeployNode = ({ node, disabled }: DeployNodeProps) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const config = (node.config as WorkflowNodeConfigForDeploy) ?? {};
|
const config = (node.config as WorkflowNodeConfigForDeploy) ?? {};
|
||||||
const provider = deployProvidersMap.get(config.provider);
|
const provider = deploymentProvidersMap.get(config.provider);
|
||||||
return (
|
return (
|
||||||
<Flex className="size-full overflow-hidden" align="center" gap={8}>
|
<Flex className="size-full overflow-hidden" align="center" gap={8}>
|
||||||
<Avatar src={provider?.icon} size="small" />
|
<Avatar src={provider?.icon} size="small" />
|
||||||
|
@ -7,10 +7,10 @@ import { z } from "zod";
|
|||||||
|
|
||||||
import AccessEditModal from "@/components/access/AccessEditModal";
|
import AccessEditModal from "@/components/access/AccessEditModal";
|
||||||
import AccessSelect from "@/components/access/AccessSelect";
|
import AccessSelect from "@/components/access/AccessSelect";
|
||||||
import DeployProviderPicker from "@/components/provider/DeployProviderPicker.tsx";
|
import DeploymentProviderPicker from "@/components/provider/DeploymentProviderPicker.tsx";
|
||||||
import DeployProviderSelect from "@/components/provider/DeployProviderSelect.tsx";
|
import DeploymentProviderSelect from "@/components/provider/DeploymentProviderSelect.tsx";
|
||||||
import Show from "@/components/Show";
|
import Show from "@/components/Show";
|
||||||
import { ACCESS_USAGES, DEPLOY_PROVIDERS, accessProvidersMap, deployProvidersMap } from "@/domain/provider";
|
import { ACCESS_USAGES, DEPLOYMENT_PROVIDERS, accessProvidersMap, deploymentProvidersMap } from "@/domain/provider";
|
||||||
import { type WorkflowNode, type WorkflowNodeConfigForDeploy } from "@/domain/workflow";
|
import { type WorkflowNode, type WorkflowNodeConfigForDeploy } from "@/domain/workflow";
|
||||||
import { useAntdForm, useAntdFormName, useZustandShallowSelector } from "@/hooks";
|
import { useAntdForm, useAntdFormName, useZustandShallowSelector } from "@/hooks";
|
||||||
import { useWorkflowStore } from "@/stores/workflow";
|
import { useWorkflowStore } from "@/stores/workflow";
|
||||||
@ -133,7 +133,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
.refine((v) => {
|
.refine((v) => {
|
||||||
if (!fieldProvider) return true;
|
if (!fieldProvider) return true;
|
||||||
|
|
||||||
const provider = deployProvidersMap.get(fieldProvider);
|
const provider = deploymentProvidersMap.get(fieldProvider);
|
||||||
return !!provider?.builtin || !!v;
|
return !!provider?.builtin || !!v;
|
||||||
}, t("workflow_node.deploy.form.provider_access.placeholder")),
|
}, t("workflow_node.deploy.form.provider_access.placeholder")),
|
||||||
providerConfig: z.any().nullish(),
|
providerConfig: z.any().nullish(),
|
||||||
@ -151,7 +151,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// 内置的部署提供商(如本地部署)无需显示授权信息字段
|
// 内置的部署提供商(如本地部署)无需显示授权信息字段
|
||||||
if (fieldProvider) {
|
if (fieldProvider) {
|
||||||
const provider = deployProvidersMap.get(fieldProvider);
|
const provider = deploymentProvidersMap.get(fieldProvider);
|
||||||
setShowProviderAccess(!provider?.builtin);
|
setShowProviderAccess(!provider?.builtin);
|
||||||
} else {
|
} else {
|
||||||
setShowProviderAccess(false);
|
setShowProviderAccess(false);
|
||||||
@ -173,145 +173,145 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
NOTICE: If you add new child component, please keep ASCII order.
|
NOTICE: If you add new child component, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
switch (fieldProvider) {
|
switch (fieldProvider) {
|
||||||
case DEPLOY_PROVIDERS["1PANEL_CONSOLE"]:
|
case DEPLOYMENT_PROVIDERS["1PANEL_CONSOLE"]:
|
||||||
return <DeployNodeConfigForm1PanelConsoleConfig {...nestedFormProps} />;
|
return <DeployNodeConfigForm1PanelConsoleConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS["1PANEL_SITE"]:
|
case DEPLOYMENT_PROVIDERS["1PANEL_SITE"]:
|
||||||
return <DeployNodeConfigForm1PanelSiteConfig {...nestedFormProps} />;
|
return <DeployNodeConfigForm1PanelSiteConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_ALB:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_ALB:
|
||||||
return <DeployNodeConfigFormAliyunALBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunALBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_APIGW:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_APIGW:
|
||||||
return <DeployNodeConfigFormAliyunAPIGWConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunAPIGWConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_CAS:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_CAS:
|
||||||
return <DeployNodeConfigFormAliyunCASConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunCASConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_CAS_DEPLOY:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_CAS_DEPLOY:
|
||||||
return <DeployNodeConfigFormAliyunCASDeployConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunCASDeployConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_CLB:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_CLB:
|
||||||
return <DeployNodeConfigFormAliyunCLBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunCLBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_CDN:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_CDN:
|
||||||
return <DeployNodeConfigFormAliyunCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_DCDN:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_DCDN:
|
||||||
return <DeployNodeConfigFormAliyunDCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunDCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_ESA:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_ESA:
|
||||||
return <DeployNodeConfigFormAliyunESAConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunESAConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_FC:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_FC:
|
||||||
return <DeployNodeConfigFormAliyunFCConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunFCConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_LIVE:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_LIVE:
|
||||||
return <DeployNodeConfigFormAliyunLiveConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunLiveConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_NLB:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_NLB:
|
||||||
return <DeployNodeConfigFormAliyunNLBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunNLBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_OSS:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_OSS:
|
||||||
return <DeployNodeConfigFormAliyunOSSConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunOSSConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_VOD:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_VOD:
|
||||||
return <DeployNodeConfigFormAliyunVODConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunVODConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.ALIYUN_WAF:
|
case DEPLOYMENT_PROVIDERS.ALIYUN_WAF:
|
||||||
return <DeployNodeConfigFormAliyunWAFConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAliyunWAFConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.AWS_ACM:
|
case DEPLOYMENT_PROVIDERS.AWS_ACM:
|
||||||
return <DeployNodeConfigFormAWSACMConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAWSACMConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.AWS_CLOUDFRONT:
|
case DEPLOYMENT_PROVIDERS.AWS_CLOUDFRONT:
|
||||||
return <DeployNodeConfigFormAWSCloudFrontConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAWSCloudFrontConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.AZURE_KEYVAULT:
|
case DEPLOYMENT_PROVIDERS.AZURE_KEYVAULT:
|
||||||
return <DeployNodeConfigFormAzureKeyVaultConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormAzureKeyVaultConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BAIDUCLOUD_APPBLB:
|
case DEPLOYMENT_PROVIDERS.BAIDUCLOUD_APPBLB:
|
||||||
return <DeployNodeConfigFormBaiduCloudAppBLBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBaiduCloudAppBLBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BAIDUCLOUD_BLB:
|
case DEPLOYMENT_PROVIDERS.BAIDUCLOUD_BLB:
|
||||||
return <DeployNodeConfigFormBaiduCloudBLBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBaiduCloudBLBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BAIDUCLOUD_CDN:
|
case DEPLOYMENT_PROVIDERS.BAIDUCLOUD_CDN:
|
||||||
return <DeployNodeConfigFormBaiduCloudCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBaiduCloudCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BAISHAN_CDN:
|
case DEPLOYMENT_PROVIDERS.BAISHAN_CDN:
|
||||||
return <DeployNodeConfigFormBaishanCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBaishanCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BAOTAPANEL_CONSOLE:
|
case DEPLOYMENT_PROVIDERS.BAOTAPANEL_CONSOLE:
|
||||||
return <DeployNodeConfigFormBaotaPanelConsoleConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBaotaPanelConsoleConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BAOTAPANEL_SITE:
|
case DEPLOYMENT_PROVIDERS.BAOTAPANEL_SITE:
|
||||||
return <DeployNodeConfigFormBaotaPanelSiteConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBaotaPanelSiteConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BUNNY_CDN:
|
case DEPLOYMENT_PROVIDERS.BUNNY_CDN:
|
||||||
return <DeployNodeConfigFormBunnyCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBunnyCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.BYTEPLUS_CDN:
|
case DEPLOYMENT_PROVIDERS.BYTEPLUS_CDN:
|
||||||
return <DeployNodeConfigFormBytePlusCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormBytePlusCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.CDNFLY:
|
case DEPLOYMENT_PROVIDERS.CDNFLY:
|
||||||
return <DeployNodeConfigFormCdnflyConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormCdnflyConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.DOGECLOUD_CDN:
|
case DEPLOYMENT_PROVIDERS.DOGECLOUD_CDN:
|
||||||
return <DeployNodeConfigFormDogeCloudCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormDogeCloudCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.EDGIO_APPLICATIONS:
|
case DEPLOYMENT_PROVIDERS.EDGIO_APPLICATIONS:
|
||||||
return <DeployNodeConfigFormEdgioApplicationsConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormEdgioApplicationsConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.GCORE_CDN:
|
case DEPLOYMENT_PROVIDERS.GCORE_CDN:
|
||||||
return <DeployNodeConfigFormGcoreCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormGcoreCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.HUAWEICLOUD_CDN:
|
case DEPLOYMENT_PROVIDERS.HUAWEICLOUD_CDN:
|
||||||
return <DeployNodeConfigFormHuaweiCloudCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormHuaweiCloudCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.HUAWEICLOUD_ELB:
|
case DEPLOYMENT_PROVIDERS.HUAWEICLOUD_ELB:
|
||||||
return <DeployNodeConfigFormHuaweiCloudELBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormHuaweiCloudELBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.HUAWEICLOUD_WAF:
|
case DEPLOYMENT_PROVIDERS.HUAWEICLOUD_WAF:
|
||||||
return <DeployNodeConfigFormHuaweiCloudWAFConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormHuaweiCloudWAFConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.JDCLOUD_ALB:
|
case DEPLOYMENT_PROVIDERS.JDCLOUD_ALB:
|
||||||
return <DeployNodeConfigFormJDCloudALBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormJDCloudALBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.JDCLOUD_CDN:
|
case DEPLOYMENT_PROVIDERS.JDCLOUD_CDN:
|
||||||
return <DeployNodeConfigFormJDCloudCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormJDCloudCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.JDCLOUD_LIVE:
|
case DEPLOYMENT_PROVIDERS.JDCLOUD_LIVE:
|
||||||
return <DeployNodeConfigFormJDCloudLiveConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormJDCloudLiveConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.JDCLOUD_VOD:
|
case DEPLOYMENT_PROVIDERS.JDCLOUD_VOD:
|
||||||
return <DeployNodeConfigFormJDCloudVODConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormJDCloudVODConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.KUBERNETES_SECRET:
|
case DEPLOYMENT_PROVIDERS.KUBERNETES_SECRET:
|
||||||
return <DeployNodeConfigFormKubernetesSecretConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormKubernetesSecretConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.LOCAL:
|
case DEPLOYMENT_PROVIDERS.LOCAL:
|
||||||
return <DeployNodeConfigFormLocalConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormLocalConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.QINIU_CDN:
|
case DEPLOYMENT_PROVIDERS.QINIU_CDN:
|
||||||
return <DeployNodeConfigFormQiniuCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormQiniuCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.QINIU_KODO:
|
case DEPLOYMENT_PROVIDERS.QINIU_KODO:
|
||||||
return <DeployNodeConfigFormQiniuKodoConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormQiniuKodoConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.QINIU_PILI:
|
case DEPLOYMENT_PROVIDERS.QINIU_PILI:
|
||||||
return <DeployNodeConfigFormQiniuPiliConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormQiniuPiliConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.RAINYUN_RCDN:
|
case DEPLOYMENT_PROVIDERS.RAINYUN_RCDN:
|
||||||
return <DeployNodeConfigFormRainYunRCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormRainYunRCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.SAFELINE:
|
case DEPLOYMENT_PROVIDERS.SAFELINE:
|
||||||
return <DeployNodeConfigFormSafeLineConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormSafeLineConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.SSH:
|
case DEPLOYMENT_PROVIDERS.SSH:
|
||||||
return <DeployNodeConfigFormSSHConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormSSHConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_CDN:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_CDN:
|
||||||
return <DeployNodeConfigFormTencentCloudCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_CLB:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_CLB:
|
||||||
return <DeployNodeConfigFormTencentCloudCLBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudCLBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_COS:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_COS:
|
||||||
return <DeployNodeConfigFormTencentCloudCOSConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudCOSConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_CSS:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_CSS:
|
||||||
return <DeployNodeConfigFormTencentCloudCSSConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudCSSConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_ECDN:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_ECDN:
|
||||||
return <DeployNodeConfigFormTencentCloudECDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudECDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_EO:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_EO:
|
||||||
return <DeployNodeConfigFormTencentCloudEOConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudEOConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_SCF:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_SCF:
|
||||||
return <DeployNodeConfigFormTencentCloudSCFConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudSCFConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_SSL_DEPLOY:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_SSL_DEPLOY:
|
||||||
return <DeployNodeConfigFormTencentCloudSSLDeployConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudSSLDeployConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_VOD:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_VOD:
|
||||||
return <DeployNodeConfigFormTencentCloudVODConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudVODConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.TENCENTCLOUD_WAF:
|
case DEPLOYMENT_PROVIDERS.TENCENTCLOUD_WAF:
|
||||||
return <DeployNodeConfigFormTencentCloudWAFConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormTencentCloudWAFConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.UCLOUD_UCDN:
|
case DEPLOYMENT_PROVIDERS.UCLOUD_UCDN:
|
||||||
return <DeployNodeConfigFormUCloudUCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormUCloudUCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.UCLOUD_US3:
|
case DEPLOYMENT_PROVIDERS.UCLOUD_US3:
|
||||||
return <DeployNodeConfigFormUCloudUS3Config {...nestedFormProps} />;
|
return <DeployNodeConfigFormUCloudUS3Config {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.UPYUN_CDN:
|
case DEPLOYMENT_PROVIDERS.UPYUN_CDN:
|
||||||
return <DeployNodeConfigFormUpyunCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormUpyunCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.UPYUN_FILE:
|
case DEPLOYMENT_PROVIDERS.UPYUN_FILE:
|
||||||
return <DeployNodeConfigFormUpyunFileConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormUpyunFileConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_ALB:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_ALB:
|
||||||
return <DeployNodeConfigFormVolcEngineALBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineALBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_CDN:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_CDN:
|
||||||
return <DeployNodeConfigFormVolcEngineCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_CERTCENTER:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_CERTCENTER:
|
||||||
return <DeployNodeConfigFormVolcEngineCertCenterConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineCertCenterConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_CLB:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_CLB:
|
||||||
return <DeployNodeConfigFormVolcEngineCLBConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineCLBConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_DCDN:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_DCDN:
|
||||||
return <DeployNodeConfigFormVolcEngineDCDNConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineDCDNConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_IMAGEX:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_IMAGEX:
|
||||||
return <DeployNodeConfigFormVolcEngineImageXConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineImageXConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_LIVE:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_LIVE:
|
||||||
return <DeployNodeConfigFormVolcEngineLiveConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineLiveConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.VOLCENGINE_TOS:
|
case DEPLOYMENT_PROVIDERS.VOLCENGINE_TOS:
|
||||||
return <DeployNodeConfigFormVolcEngineTOSConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormVolcEngineTOSConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.WANGSU_CDNPRO:
|
case DEPLOYMENT_PROVIDERS.WANGSU_CDNPRO:
|
||||||
return <DeployNodeConfigFormWangsuCDNProConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormWangsuCDNProConfig {...nestedFormProps} />;
|
||||||
case DEPLOY_PROVIDERS.WEBHOOK:
|
case DEPLOYMENT_PROVIDERS.WEBHOOK:
|
||||||
return <DeployNodeConfigFormWebhookConfig {...nestedFormProps} />;
|
return <DeployNodeConfigFormWebhookConfig {...nestedFormProps} />;
|
||||||
}
|
}
|
||||||
}, [disabled, initialValues?.providerConfig, fieldProvider, nestedFormInst, nestedFormName]);
|
}, [disabled, initialValues?.providerConfig, fieldProvider, nestedFormInst, nestedFormName]);
|
||||||
@ -339,7 +339,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
}
|
}
|
||||||
formInst.setFieldsValue(newValues);
|
formInst.setFieldsValue(newValues);
|
||||||
|
|
||||||
if (deployProvidersMap.get(fieldProvider)?.provider !== deployProvidersMap.get(value!)?.provider) {
|
if (deploymentProvidersMap.get(fieldProvider)?.provider !== deploymentProvidersMap.get(value!)?.provider) {
|
||||||
formInst.setFieldValue("providerAccessId", undefined);
|
formInst.setFieldValue("providerAccessId", undefined);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
}
|
}
|
||||||
@ -384,10 +384,10 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
<Form className={className} style={style} {...formProps} disabled={disabled} layout="vertical" scrollToFirstError onValuesChange={handleFormChange}>
|
<Form className={className} style={style} {...formProps} disabled={disabled} layout="vertical" scrollToFirstError onValuesChange={handleFormChange}>
|
||||||
<Show
|
<Show
|
||||||
when={!!fieldProvider}
|
when={!!fieldProvider}
|
||||||
fallback={<DeployProviderPicker autoFocus placeholder={t("workflow_node.deploy.search.provider.placeholder")} onSelect={handleProviderPick} />}
|
fallback={<DeploymentProviderPicker autoFocus placeholder={t("workflow_node.deploy.search.provider.placeholder")} onSelect={handleProviderPick} />}
|
||||||
>
|
>
|
||||||
<Form.Item name="provider" label={t("workflow_node.deploy.form.provider.label")} rules={[formRule]}>
|
<Form.Item name="provider" label={t("workflow_node.deploy.form.provider.label")} rules={[formRule]}>
|
||||||
<DeployProviderSelect
|
<DeploymentProviderSelect
|
||||||
allowClear
|
allowClear
|
||||||
disabled={!!initialValues?.provider}
|
disabled={!!initialValues?.provider}
|
||||||
placeholder={t("workflow_node.deploy.form.provider.placeholder")}
|
placeholder={t("workflow_node.deploy.form.provider.placeholder")}
|
||||||
@ -410,7 +410,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
</div>
|
</div>
|
||||||
<div className="text-right">
|
<div className="text-right">
|
||||||
<AccessEditModal
|
<AccessEditModal
|
||||||
data={{ provider: deployProvidersMap.get(fieldProvider!)?.provider }}
|
data={{ provider: deploymentProvidersMap.get(fieldProvider!)?.provider }}
|
||||||
range="both-dns-hosting"
|
range="both-dns-hosting"
|
||||||
scene="add"
|
scene="add"
|
||||||
trigger={
|
trigger={
|
||||||
@ -433,7 +433,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
<AccessSelect
|
<AccessSelect
|
||||||
filter={(record) => {
|
filter={(record) => {
|
||||||
if (fieldProvider) {
|
if (fieldProvider) {
|
||||||
return deployProvidersMap.get(fieldProvider)?.provider === record.provider;
|
return deploymentProvidersMap.get(fieldProvider)?.provider === record.provider;
|
||||||
}
|
}
|
||||||
|
|
||||||
const provider = accessProvidersMap.get(record.provider);
|
const provider = accessProvidersMap.get(record.provider);
|
||||||
@ -444,7 +444,7 @@ const DeployNodeConfigForm = forwardRef<DeployNodeConfigFormInstance, DeployNode
|
|||||||
</Form.Item>
|
</Form.Item>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
|
||||||
<Show when={fieldProvider === DEPLOY_PROVIDERS.LOCAL}>
|
<Show when={fieldProvider === DEPLOYMENT_PROVIDERS.LOCAL}>
|
||||||
<Form.Item>
|
<Form.Item>
|
||||||
<Alert
|
<Alert
|
||||||
type="info"
|
type="info"
|
||||||
|
@ -3,7 +3,7 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { Avatar, Flex, Typography } from "antd";
|
import { Avatar, Flex, Typography } from "antd";
|
||||||
import { produce } from "immer";
|
import { produce } from "immer";
|
||||||
|
|
||||||
import { notifyProvidersMap } from "@/domain/provider";
|
import { notificationProvidersMap } from "@/domain/provider";
|
||||||
import { notifyChannelsMap } from "@/domain/settings";
|
import { notifyChannelsMap } from "@/domain/settings";
|
||||||
import { type WorkflowNodeConfigForNotify, WorkflowNodeType } from "@/domain/workflow";
|
import { type WorkflowNodeConfigForNotify, WorkflowNodeType } from "@/domain/workflow";
|
||||||
import { useZustandShallowSelector } from "@/hooks";
|
import { useZustandShallowSelector } from "@/hooks";
|
||||||
@ -40,7 +40,7 @@ const NotifyNode = ({ node, disabled }: NotifyNodeProps) => {
|
|||||||
|
|
||||||
const config = (node.config as WorkflowNodeConfigForNotify) ?? {};
|
const config = (node.config as WorkflowNodeConfigForNotify) ?? {};
|
||||||
const channel = notifyChannelsMap.get(config.channel as string);
|
const channel = notifyChannelsMap.get(config.channel as string);
|
||||||
const provider = notifyProvidersMap.get(config.provider);
|
const provider = notificationProvidersMap.get(config.provider);
|
||||||
return (
|
return (
|
||||||
<Flex className="size-full overflow-hidden" align="center" gap={8}>
|
<Flex className="size-full overflow-hidden" align="center" gap={8}>
|
||||||
<Avatar src={provider?.icon} size="small" />
|
<Avatar src={provider?.icon} size="small" />
|
||||||
|
@ -2,14 +2,14 @@ import { forwardRef, memo, useEffect, useImperativeHandle, useState } from "reac
|
|||||||
import { useTranslation } from "react-i18next";
|
import { useTranslation } from "react-i18next";
|
||||||
import { Link } from "react-router";
|
import { Link } from "react-router";
|
||||||
import { PlusOutlined as PlusOutlinedIcon, RightOutlined as RightOutlinedIcon } from "@ant-design/icons";
|
import { PlusOutlined as PlusOutlinedIcon, RightOutlined as RightOutlinedIcon } from "@ant-design/icons";
|
||||||
import { Alert, Button, Form, type FormInstance, Input, Select } from "antd";
|
import { Button, Form, type FormInstance, Input, Select } from "antd";
|
||||||
import { createSchemaFieldRule } from "antd-zod";
|
import { createSchemaFieldRule } from "antd-zod";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
|
|
||||||
import AccessEditModal from "@/components/access/AccessEditModal";
|
import AccessEditModal from "@/components/access/AccessEditModal";
|
||||||
import AccessSelect from "@/components/access/AccessSelect";
|
import AccessSelect from "@/components/access/AccessSelect";
|
||||||
import NotifyProviderSelect from "@/components/provider/NotifyProviderSelect";
|
import NotificationProviderSelect from "@/components/provider/NotificationProviderSelect";
|
||||||
import { ACCESS_USAGES, accessProvidersMap, notifyProvidersMap } from "@/domain/provider";
|
import { ACCESS_USAGES, accessProvidersMap, notificationProvidersMap } from "@/domain/provider";
|
||||||
import { notifyChannelsMap } from "@/domain/settings";
|
import { notifyChannelsMap } from "@/domain/settings";
|
||||||
import { type WorkflowNodeConfigForNotify } from "@/domain/workflow";
|
import { type WorkflowNodeConfigForNotify } from "@/domain/workflow";
|
||||||
import { useAntdForm, useZustandShallowSelector } from "@/hooks";
|
import { useAntdForm, useZustandShallowSelector } from "@/hooks";
|
||||||
@ -81,7 +81,7 @@ const NotifyNodeConfigForm = forwardRef<NotifyNodeConfigFormInstance, NotifyNode
|
|||||||
// 如果对应多个,则显示。
|
// 如果对应多个,则显示。
|
||||||
if (fieldProviderAccessId) {
|
if (fieldProviderAccessId) {
|
||||||
const access = accesses.find((e) => e.id === fieldProviderAccessId);
|
const access = accesses.find((e) => e.id === fieldProviderAccessId);
|
||||||
const providers = Array.from(notifyProvidersMap.values()).filter((e) => e.provider === access?.provider);
|
const providers = Array.from(notificationProvidersMap.values()).filter((e) => e.provider === access?.provider);
|
||||||
setShowProvider(providers.length > 1);
|
setShowProvider(providers.length > 1);
|
||||||
} else {
|
} else {
|
||||||
setShowProvider(false);
|
setShowProvider(false);
|
||||||
@ -96,7 +96,7 @@ const NotifyNodeConfigForm = forwardRef<NotifyNodeConfigFormInstance, NotifyNode
|
|||||||
formInst.setFieldValue("providerAccessId", initialValues?.providerAccessId);
|
formInst.setFieldValue("providerAccessId", initialValues?.providerAccessId);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
} else {
|
} else {
|
||||||
if (notifyProvidersMap.get(fieldProvider)?.provider !== notifyProvidersMap.get(value)?.provider) {
|
if (notificationProvidersMap.get(fieldProvider)?.provider !== notificationProvidersMap.get(value)?.provider) {
|
||||||
formInst.setFieldValue("providerAccessId", undefined);
|
formInst.setFieldValue("providerAccessId", undefined);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
}
|
}
|
||||||
@ -108,7 +108,7 @@ const NotifyNodeConfigForm = forwardRef<NotifyNodeConfigFormInstance, NotifyNode
|
|||||||
|
|
||||||
// 切换授权信息时联动消息通知提供商
|
// 切换授权信息时联动消息通知提供商
|
||||||
const access = accesses.find((access) => access.id === value);
|
const access = accesses.find((access) => access.id === value);
|
||||||
const provider = Array.from(notifyProvidersMap.values()).find((provider) => provider.provider === access?.provider);
|
const provider = Array.from(notificationProvidersMap.values()).find((provider) => provider.provider === access?.provider);
|
||||||
if (fieldProvider !== provider?.type) {
|
if (fieldProvider !== provider?.type) {
|
||||||
formInst.setFieldValue("provider", provider?.type);
|
formInst.setFieldValue("provider", provider?.type);
|
||||||
onValuesChange?.(formInst.getFieldsValue(true));
|
onValuesChange?.(formInst.getFieldsValue(true));
|
||||||
@ -172,7 +172,7 @@ const NotifyNodeConfigForm = forwardRef<NotifyNodeConfigFormInstance, NotifyNode
|
|||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
|
||||||
<Form.Item name="provider" label={t("workflow_node.notify.form.provider.label")} hidden={!showProvider} rules={[formRule]}>
|
<Form.Item name="provider" label={t("workflow_node.notify.form.provider.label")} hidden={!showProvider} rules={[formRule]}>
|
||||||
<NotifyProviderSelect
|
<NotificationProviderSelect
|
||||||
disabled={!showProvider}
|
disabled={!showProvider}
|
||||||
filter={(record) => {
|
filter={(record) => {
|
||||||
if (fieldProviderAccessId) {
|
if (fieldProviderAccessId) {
|
||||||
|
@ -150,12 +150,12 @@ export const accessProvidersMap: Map<AccessProvider["type"] | string, AccessProv
|
|||||||
);
|
);
|
||||||
// #endregion
|
// #endregion
|
||||||
|
|
||||||
// #region ApplyCAProvider
|
// #region CAProvider
|
||||||
/*
|
/*
|
||||||
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
export const APPLY_CA_PROVIDERS = Object.freeze({
|
export const CA_PROVIDERS = Object.freeze({
|
||||||
BUYPASS: `${ACCESS_PROVIDERS.BUYPASS}`,
|
BUYPASS: `${ACCESS_PROVIDERS.BUYPASS}`,
|
||||||
GOOGLETRUSTSERVICES: `${ACCESS_PROVIDERS.GOOGLETRUSTSERVICES}`,
|
GOOGLETRUSTSERVICES: `${ACCESS_PROVIDERS.GOOGLETRUSTSERVICES}`,
|
||||||
LETSENCRYPT: `${ACCESS_PROVIDERS.LETSENCRYPT}`,
|
LETSENCRYPT: `${ACCESS_PROVIDERS.LETSENCRYPT}`,
|
||||||
@ -164,32 +164,32 @@ export const APPLY_CA_PROVIDERS = Object.freeze({
|
|||||||
ZEROSSL: `${ACCESS_PROVIDERS.ZEROSSL}`,
|
ZEROSSL: `${ACCESS_PROVIDERS.ZEROSSL}`,
|
||||||
} as const);
|
} as const);
|
||||||
|
|
||||||
export type ApplyCAProviderType = (typeof APPLY_CA_PROVIDERS)[keyof typeof APPLY_CA_PROVIDERS];
|
export type CAProviderType = (typeof CA_PROVIDERS)[keyof typeof CA_PROVIDERS];
|
||||||
|
|
||||||
export type ApplyCAProvider = {
|
export type CAProvider = {
|
||||||
type: ApplyCAProviderType;
|
type: CAProviderType;
|
||||||
name: string;
|
name: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
provider: AccessProviderType;
|
provider: AccessProviderType;
|
||||||
builtin: boolean;
|
builtin: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const applyCAProvidersMap: Map<ApplyCAProvider["type"] | string, ApplyCAProvider> = new Map(
|
export const caProvidersMap: Map<CAProvider["type"] | string, CAProvider> = new Map(
|
||||||
/*
|
/*
|
||||||
注意:此处的顺序决定显示在前端的顺序。
|
注意:此处的顺序决定显示在前端的顺序。
|
||||||
NOTICE: The following order determines the order displayed at the frontend.
|
NOTICE: The following order determines the order displayed at the frontend.
|
||||||
*/
|
*/
|
||||||
[
|
[
|
||||||
[APPLY_CA_PROVIDERS.LETSENCRYPT, "builtin"],
|
[CA_PROVIDERS.LETSENCRYPT, "builtin"],
|
||||||
[APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING, "builtin"],
|
[CA_PROVIDERS.LETSENCRYPTSTAGING, "builtin"],
|
||||||
[APPLY_CA_PROVIDERS.BUYPASS],
|
[CA_PROVIDERS.BUYPASS],
|
||||||
[APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES],
|
[CA_PROVIDERS.GOOGLETRUSTSERVICES],
|
||||||
[APPLY_CA_PROVIDERS.SSLCOM],
|
[CA_PROVIDERS.SSLCOM],
|
||||||
[APPLY_CA_PROVIDERS.ZEROSSL],
|
[CA_PROVIDERS.ZEROSSL],
|
||||||
].map(([type, builtin]) => [
|
].map(([type, builtin]) => [
|
||||||
type,
|
type,
|
||||||
{
|
{
|
||||||
type: type as ApplyCAProviderType,
|
type: type as CAProviderType,
|
||||||
name: accessProvidersMap.get(type.split("-")[0])!.name,
|
name: accessProvidersMap.get(type.split("-")[0])!.name,
|
||||||
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
||||||
provider: type.split("-")[0] as AccessProviderType,
|
provider: type.split("-")[0] as AccessProviderType,
|
||||||
@ -199,12 +199,12 @@ export const applyCAProvidersMap: Map<ApplyCAProvider["type"] | string, ApplyCAP
|
|||||||
);
|
);
|
||||||
// #endregion
|
// #endregion
|
||||||
|
|
||||||
// #region ApplyDNSProvider
|
// #region ACMEDNS01Provider
|
||||||
/*
|
/*
|
||||||
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
export const APPLY_DNS_PROVIDERS = Object.freeze({
|
export const ACME_DNS01_PROVIDERS = Object.freeze({
|
||||||
ACMEHTTPREQ: `${ACCESS_PROVIDERS.ACMEHTTPREQ}`,
|
ACMEHTTPREQ: `${ACCESS_PROVIDERS.ACMEHTTPREQ}`,
|
||||||
ALIYUN: `${ACCESS_PROVIDERS.ALIYUN}`, // 兼容旧值,等同于 `ALIYUN_DNS`
|
ALIYUN: `${ACCESS_PROVIDERS.ALIYUN}`, // 兼容旧值,等同于 `ALIYUN_DNS`
|
||||||
ALIYUN_DNS: `${ACCESS_PROVIDERS.ALIYUN}-dns`,
|
ALIYUN_DNS: `${ACCESS_PROVIDERS.ALIYUN}-dns`,
|
||||||
@ -244,54 +244,54 @@ export const APPLY_DNS_PROVIDERS = Object.freeze({
|
|||||||
WESTCN: `${ACCESS_PROVIDERS.WESTCN}`,
|
WESTCN: `${ACCESS_PROVIDERS.WESTCN}`,
|
||||||
} as const);
|
} as const);
|
||||||
|
|
||||||
export type ApplyDNSProviderType = (typeof APPLY_DNS_PROVIDERS)[keyof typeof APPLY_DNS_PROVIDERS];
|
export type AcmeDns01ProviderType = (typeof ACME_DNS01_PROVIDERS)[keyof typeof ACME_DNS01_PROVIDERS];
|
||||||
|
|
||||||
export type ApplyDNSProvider = {
|
export type AcmeDns01Provider = {
|
||||||
type: ApplyDNSProviderType;
|
type: AcmeDns01ProviderType;
|
||||||
name: string;
|
name: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
provider: AccessProviderType;
|
provider: AccessProviderType;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const applyDNSProvidersMap: Map<ApplyDNSProvider["type"] | string, ApplyDNSProvider> = new Map(
|
export const acmeDns01ProvidersMap: Map<AcmeDns01Provider["type"] | string, AcmeDns01Provider> = new Map(
|
||||||
/*
|
/*
|
||||||
注意:此处的顺序决定显示在前端的顺序。
|
注意:此处的顺序决定显示在前端的顺序。
|
||||||
NOTICE: The following order determines the order displayed at the frontend.
|
NOTICE: The following order determines the order displayed at the frontend.
|
||||||
*/
|
*/
|
||||||
[
|
[
|
||||||
[APPLY_DNS_PROVIDERS.ALIYUN_DNS, "provider.aliyun.dns"],
|
[ACME_DNS01_PROVIDERS.ALIYUN_DNS, "provider.aliyun.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.TENCENTCLOUD_DNS, "provider.tencentcloud.dns"],
|
[ACME_DNS01_PROVIDERS.TENCENTCLOUD_DNS, "provider.tencentcloud.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.TENCENTCLOUD_EO, "provider.tencentcloud.eo"],
|
[ACME_DNS01_PROVIDERS.TENCENTCLOUD_EO, "provider.tencentcloud.eo"],
|
||||||
[APPLY_DNS_PROVIDERS.BAIDUCLOUD_DNS, "provider.baiducloud.dns"],
|
[ACME_DNS01_PROVIDERS.BAIDUCLOUD_DNS, "provider.baiducloud.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.HUAWEICLOUD_DNS, "provider.huaweicloud.dns"],
|
[ACME_DNS01_PROVIDERS.HUAWEICLOUD_DNS, "provider.huaweicloud.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.VOLCENGINE_DNS, "provider.volcengine.dns"],
|
[ACME_DNS01_PROVIDERS.VOLCENGINE_DNS, "provider.volcengine.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.JDCLOUD_DNS, "provider.jdcloud.dns"],
|
[ACME_DNS01_PROVIDERS.JDCLOUD_DNS, "provider.jdcloud.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.AWS_ROUTE53, "provider.aws.route53"],
|
[ACME_DNS01_PROVIDERS.AWS_ROUTE53, "provider.aws.route53"],
|
||||||
[APPLY_DNS_PROVIDERS.AZURE_DNS, "provider.azure.dns"],
|
[ACME_DNS01_PROVIDERS.AZURE_DNS, "provider.azure.dns"],
|
||||||
[APPLY_DNS_PROVIDERS.BUNNY, "provider.bunny"],
|
[ACME_DNS01_PROVIDERS.BUNNY, "provider.bunny"],
|
||||||
[APPLY_DNS_PROVIDERS.CLOUDFLARE, "provider.cloudflare"],
|
[ACME_DNS01_PROVIDERS.CLOUDFLARE, "provider.cloudflare"],
|
||||||
[APPLY_DNS_PROVIDERS.CLOUDNS, "provider.cloudns"],
|
[ACME_DNS01_PROVIDERS.CLOUDNS, "provider.cloudns"],
|
||||||
[APPLY_DNS_PROVIDERS.DESEC, "provider.desec"],
|
[ACME_DNS01_PROVIDERS.DESEC, "provider.desec"],
|
||||||
[APPLY_DNS_PROVIDERS.DNSLA, "provider.dnsla"],
|
[ACME_DNS01_PROVIDERS.DNSLA, "provider.dnsla"],
|
||||||
[APPLY_DNS_PROVIDERS.DYNV6, "provider.dynv6"],
|
[ACME_DNS01_PROVIDERS.DYNV6, "provider.dynv6"],
|
||||||
[APPLY_DNS_PROVIDERS.GCORE, "provider.gcore"],
|
[ACME_DNS01_PROVIDERS.GCORE, "provider.gcore"],
|
||||||
[APPLY_DNS_PROVIDERS.GNAME, "provider.gname"],
|
[ACME_DNS01_PROVIDERS.GNAME, "provider.gname"],
|
||||||
[APPLY_DNS_PROVIDERS.GODADDY, "provider.godaddy"],
|
[ACME_DNS01_PROVIDERS.GODADDY, "provider.godaddy"],
|
||||||
[APPLY_DNS_PROVIDERS.NAMECHEAP, "provider.namecheap"],
|
[ACME_DNS01_PROVIDERS.NAMECHEAP, "provider.namecheap"],
|
||||||
[APPLY_DNS_PROVIDERS.NAMEDOTCOM, "provider.namedotcom"],
|
[ACME_DNS01_PROVIDERS.NAMEDOTCOM, "provider.namedotcom"],
|
||||||
[APPLY_DNS_PROVIDERS.NAMESILO, "provider.namesilo"],
|
[ACME_DNS01_PROVIDERS.NAMESILO, "provider.namesilo"],
|
||||||
[APPLY_DNS_PROVIDERS.NS1, "provider.ns1"],
|
[ACME_DNS01_PROVIDERS.NS1, "provider.ns1"],
|
||||||
[APPLY_DNS_PROVIDERS.PORKBUN, "provider.porkbun"],
|
[ACME_DNS01_PROVIDERS.PORKBUN, "provider.porkbun"],
|
||||||
[APPLY_DNS_PROVIDERS.VERCEL, "provider.vercel"],
|
[ACME_DNS01_PROVIDERS.VERCEL, "provider.vercel"],
|
||||||
[APPLY_DNS_PROVIDERS.CMCCCLOUD, "provider.cmcccloud"],
|
[ACME_DNS01_PROVIDERS.CMCCCLOUD, "provider.cmcccloud"],
|
||||||
[APPLY_DNS_PROVIDERS.RAINYUN, "provider.rainyun"],
|
[ACME_DNS01_PROVIDERS.RAINYUN, "provider.rainyun"],
|
||||||
[APPLY_DNS_PROVIDERS.WESTCN, "provider.westcn"],
|
[ACME_DNS01_PROVIDERS.WESTCN, "provider.westcn"],
|
||||||
[APPLY_DNS_PROVIDERS.POWERDNS, "provider.powerdns"],
|
[ACME_DNS01_PROVIDERS.POWERDNS, "provider.powerdns"],
|
||||||
[APPLY_DNS_PROVIDERS.ACMEHTTPREQ, "provider.acmehttpreq"],
|
[ACME_DNS01_PROVIDERS.ACMEHTTPREQ, "provider.acmehttpreq"],
|
||||||
].map(([type, name]) => [
|
].map(([type, name]) => [
|
||||||
type,
|
type,
|
||||||
{
|
{
|
||||||
type: type as ApplyDNSProviderType,
|
type: type as AcmeDns01ProviderType,
|
||||||
name: name,
|
name: name,
|
||||||
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
||||||
provider: type.split("-")[0] as AccessProviderType,
|
provider: type.split("-")[0] as AccessProviderType,
|
||||||
@ -300,12 +300,12 @@ export const applyDNSProvidersMap: Map<ApplyDNSProvider["type"] | string, ApplyD
|
|||||||
);
|
);
|
||||||
// #endregion
|
// #endregion
|
||||||
|
|
||||||
// #region DeployProvider
|
// #region DeploymentProvider
|
||||||
/*
|
/*
|
||||||
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
export const DEPLOY_PROVIDERS = Object.freeze({
|
export const DEPLOYMENT_PROVIDERS = Object.freeze({
|
||||||
["1PANEL_CONSOLE"]: `${ACCESS_PROVIDERS["1PANEL"]}-console`,
|
["1PANEL_CONSOLE"]: `${ACCESS_PROVIDERS["1PANEL"]}-console`,
|
||||||
["1PANEL_SITE"]: `${ACCESS_PROVIDERS["1PANEL"]}-site`,
|
["1PANEL_SITE"]: `${ACCESS_PROVIDERS["1PANEL"]}-site`,
|
||||||
ALIYUN_ALB: `${ACCESS_PROVIDERS.ALIYUN}-alb`,
|
ALIYUN_ALB: `${ACCESS_PROVIDERS.ALIYUN}-alb`,
|
||||||
@ -382,9 +382,9 @@ export const DEPLOY_PROVIDERS = Object.freeze({
|
|||||||
WEBHOOK: `${ACCESS_PROVIDERS.WEBHOOK}`,
|
WEBHOOK: `${ACCESS_PROVIDERS.WEBHOOK}`,
|
||||||
} as const);
|
} as const);
|
||||||
|
|
||||||
export type DeployProviderType = (typeof DEPLOY_PROVIDERS)[keyof typeof DEPLOY_PROVIDERS];
|
export type DeploymentProviderType = (typeof DEPLOYMENT_PROVIDERS)[keyof typeof DEPLOYMENT_PROVIDERS];
|
||||||
|
|
||||||
export const DEPLOY_CATEGORIES = Object.freeze({
|
export const DEPLOYMENT_CATEGORIES = Object.freeze({
|
||||||
ALL: "all",
|
ALL: "all",
|
||||||
CDN: "cdn",
|
CDN: "cdn",
|
||||||
STORAGE: "storage",
|
STORAGE: "storage",
|
||||||
@ -396,138 +396,138 @@ export const DEPLOY_CATEGORIES = Object.freeze({
|
|||||||
OTHER: "other",
|
OTHER: "other",
|
||||||
} as const);
|
} as const);
|
||||||
|
|
||||||
export type DeployCategoryType = (typeof DEPLOY_CATEGORIES)[keyof typeof DEPLOY_CATEGORIES];
|
export type DeploymentCategoryType = (typeof DEPLOYMENT_CATEGORIES)[keyof typeof DEPLOYMENT_CATEGORIES];
|
||||||
|
|
||||||
export type DeployProvider = {
|
export type DeploymentProvider = {
|
||||||
type: DeployProviderType;
|
type: DeploymentProviderType;
|
||||||
name: string;
|
name: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
provider: AccessProviderType;
|
provider: AccessProviderType;
|
||||||
category: DeployCategoryType;
|
category: DeploymentCategoryType;
|
||||||
builtin: boolean;
|
builtin: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const deployProvidersMap: Map<DeployProvider["type"] | string, DeployProvider> = new Map(
|
export const deploymentProvidersMap: Map<DeploymentProvider["type"] | string, DeploymentProvider> = new Map(
|
||||||
/*
|
/*
|
||||||
注意:此处的顺序决定显示在前端的顺序。
|
注意:此处的顺序决定显示在前端的顺序。
|
||||||
NOTICE: The following order determines the order displayed at the frontend.
|
NOTICE: The following order determines the order displayed at the frontend.
|
||||||
*/
|
*/
|
||||||
[
|
[
|
||||||
[DEPLOY_PROVIDERS.LOCAL, "provider.local", DEPLOY_CATEGORIES.OTHER, "builtin"],
|
[DEPLOYMENT_PROVIDERS.LOCAL, "provider.local", DEPLOYMENT_CATEGORIES.OTHER, "builtin"],
|
||||||
[DEPLOY_PROVIDERS.SSH, "provider.ssh", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.SSH, "provider.ssh", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.WEBHOOK, "provider.webhook", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.WEBHOOK, "provider.webhook", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.KUBERNETES_SECRET, "provider.kubernetes.secret", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.KUBERNETES_SECRET, "provider.kubernetes.secret", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_OSS, "provider.aliyun.oss", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_OSS, "provider.aliyun.oss", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_CDN, "provider.aliyun.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_CDN, "provider.aliyun.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_DCDN, "provider.aliyun.dcdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_DCDN, "provider.aliyun.dcdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_ESA, "provider.aliyun.esa", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_ESA, "provider.aliyun.esa", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_CLB, "provider.aliyun.clb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_CLB, "provider.aliyun.clb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_ALB, "provider.aliyun.alb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_ALB, "provider.aliyun.alb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_NLB, "provider.aliyun.nlb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_NLB, "provider.aliyun.nlb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_WAF, "provider.aliyun.waf", DEPLOY_CATEGORIES.FIREWALL],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_WAF, "provider.aliyun.waf", DEPLOYMENT_CATEGORIES.FIREWALL],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_LIVE, "provider.aliyun.live", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_LIVE, "provider.aliyun.live", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_VOD, "provider.aliyun.vod", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_VOD, "provider.aliyun.vod", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_FC, "provider.aliyun.fc", DEPLOY_CATEGORIES.SERVERLESS],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_FC, "provider.aliyun.fc", DEPLOYMENT_CATEGORIES.SERVERLESS],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_APIGW, "provider.aliyun.apigw", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_APIGW, "provider.aliyun.apigw", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_CAS, "provider.aliyun.cas_upload", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_CAS, "provider.aliyun.cas_upload", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.ALIYUN_CAS_DEPLOY, "provider.aliyun.cas_deploy", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.ALIYUN_CAS_DEPLOY, "provider.aliyun.cas_deploy", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_COS, "provider.tencentcloud.cos", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_COS, "provider.tencentcloud.cos", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_CDN, "provider.tencentcloud.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_CDN, "provider.tencentcloud.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_ECDN, "provider.tencentcloud.ecdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_ECDN, "provider.tencentcloud.ecdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_EO, "provider.tencentcloud.eo", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_EO, "provider.tencentcloud.eo", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_CLB, "provider.tencentcloud.clb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_CLB, "provider.tencentcloud.clb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_WAF, "provider.tencentcloud.waf", DEPLOY_CATEGORIES.FIREWALL],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_WAF, "provider.tencentcloud.waf", DEPLOYMENT_CATEGORIES.FIREWALL],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_CSS, "provider.tencentcloud.css", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_CSS, "provider.tencentcloud.css", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_VOD, "provider.tencentcloud.vod", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_VOD, "provider.tencentcloud.vod", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_SCF, "provider.tencentcloud.scf", DEPLOY_CATEGORIES.SERVERLESS],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_SCF, "provider.tencentcloud.scf", DEPLOYMENT_CATEGORIES.SERVERLESS],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_SSL, "provider.tencentcloud.ssl_upload", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_SSL, "provider.tencentcloud.ssl_upload", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.TENCENTCLOUD_SSL_DEPLOY, "provider.tencentcloud.ssl_deploy", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.TENCENTCLOUD_SSL_DEPLOY, "provider.tencentcloud.ssl_deploy", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.BAIDUCLOUD_CDN, "provider.baiducloud.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.BAIDUCLOUD_CDN, "provider.baiducloud.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.BAIDUCLOUD_BLB, "provider.baiducloud.blb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.BAIDUCLOUD_BLB, "provider.baiducloud.blb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.BAIDUCLOUD_APPBLB, "provider.baiducloud.appblb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.BAIDUCLOUD_APPBLB, "provider.baiducloud.appblb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.BAIDUCLOUD_CERT, "provider.baiducloud.cert_upload", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.BAIDUCLOUD_CERT, "provider.baiducloud.cert_upload", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.HUAWEICLOUD_CDN, "provider.huaweicloud.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.HUAWEICLOUD_CDN, "provider.huaweicloud.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.HUAWEICLOUD_ELB, "provider.huaweicloud.elb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.HUAWEICLOUD_ELB, "provider.huaweicloud.elb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.HUAWEICLOUD_WAF, "provider.huaweicloud.waf", DEPLOY_CATEGORIES.FIREWALL],
|
[DEPLOYMENT_PROVIDERS.HUAWEICLOUD_WAF, "provider.huaweicloud.waf", DEPLOYMENT_CATEGORIES.FIREWALL],
|
||||||
[DEPLOY_PROVIDERS.HUAWEICLOUD_SCM, "provider.huaweicloud.scm_upload", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.HUAWEICLOUD_SCM, "provider.huaweicloud.scm_upload", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_TOS, "provider.volcengine.tos", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_TOS, "provider.volcengine.tos", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_CDN, "provider.volcengine.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_CDN, "provider.volcengine.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_DCDN, "provider.volcengine.dcdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_DCDN, "provider.volcengine.dcdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_CLB, "provider.volcengine.clb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_CLB, "provider.volcengine.clb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_ALB, "provider.volcengine.alb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_ALB, "provider.volcengine.alb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_IMAGEX, "provider.volcengine.imagex", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_IMAGEX, "provider.volcengine.imagex", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_LIVE, "provider.volcengine.live", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_LIVE, "provider.volcengine.live", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.VOLCENGINE_CERTCENTER, "provider.volcengine.certcenter_upload", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.VOLCENGINE_CERTCENTER, "provider.volcengine.certcenter_upload", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.JDCLOUD_ALB, "provider.jdcloud.alb", DEPLOY_CATEGORIES.LOADBALANCE],
|
[DEPLOYMENT_PROVIDERS.JDCLOUD_ALB, "provider.jdcloud.alb", DEPLOYMENT_CATEGORIES.LOADBALANCE],
|
||||||
[DEPLOY_PROVIDERS.JDCLOUD_CDN, "provider.jdcloud.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.JDCLOUD_CDN, "provider.jdcloud.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.JDCLOUD_LIVE, "provider.jdcloud.live", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.JDCLOUD_LIVE, "provider.jdcloud.live", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.JDCLOUD_VOD, "provider.jdcloud.vod", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.JDCLOUD_VOD, "provider.jdcloud.vod", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.QINIU_KODO, "provider.qiniu.kodo", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.QINIU_KODO, "provider.qiniu.kodo", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.QINIU_CDN, "provider.qiniu.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.QINIU_CDN, "provider.qiniu.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.QINIU_PILI, "provider.qiniu.pili", DEPLOY_CATEGORIES.AV],
|
[DEPLOYMENT_PROVIDERS.QINIU_PILI, "provider.qiniu.pili", DEPLOYMENT_CATEGORIES.AV],
|
||||||
[DEPLOY_PROVIDERS.UPYUN_FILE, "provider.upyun.file", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.UPYUN_FILE, "provider.upyun.file", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.UPYUN_CDN, "provider.upyun.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.UPYUN_CDN, "provider.upyun.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.BAISHAN_CDN, "provider.baishan.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.BAISHAN_CDN, "provider.baishan.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.WANGSU_CDNPRO, "provider.wangsu.cdnpro", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.WANGSU_CDNPRO, "provider.wangsu.cdnpro", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.DOGECLOUD_CDN, "provider.dogecloud.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.DOGECLOUD_CDN, "provider.dogecloud.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.BYTEPLUS_CDN, "provider.byteplus.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.BYTEPLUS_CDN, "provider.byteplus.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.UCLOUD_US3, "provider.ucloud.us3", DEPLOY_CATEGORIES.STORAGE],
|
[DEPLOYMENT_PROVIDERS.UCLOUD_US3, "provider.ucloud.us3", DEPLOYMENT_CATEGORIES.STORAGE],
|
||||||
[DEPLOY_PROVIDERS.UCLOUD_UCDN, "provider.ucloud.ucdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.UCLOUD_UCDN, "provider.ucloud.ucdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.RAINYUN_RCDN, "provider.rainyun.rcdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.RAINYUN_RCDN, "provider.rainyun.rcdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.AWS_CLOUDFRONT, "provider.aws.cloudfront", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.AWS_CLOUDFRONT, "provider.aws.cloudfront", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.AWS_ACM, "provider.aws.acm", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.AWS_ACM, "provider.aws.acm", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.AZURE_KEYVAULT, "provider.azure.keyvault", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.AZURE_KEYVAULT, "provider.azure.keyvault", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.BUNNY_CDN, "provider.bunny.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.BUNNY_CDN, "provider.bunny.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.CACHEFLY, "provider.cachefly", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.CACHEFLY, "provider.cachefly", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.CDNFLY, "provider.cdnfly", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.CDNFLY, "provider.cdnfly", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS.EDGIO_APPLICATIONS, "provider.edgio.applications", DEPLOY_CATEGORIES.WEBSITE],
|
[DEPLOYMENT_PROVIDERS.EDGIO_APPLICATIONS, "provider.edgio.applications", DEPLOYMENT_CATEGORIES.WEBSITE],
|
||||||
[DEPLOY_PROVIDERS.GCORE_CDN, "provider.gcore.cdn", DEPLOY_CATEGORIES.CDN],
|
[DEPLOYMENT_PROVIDERS.GCORE_CDN, "provider.gcore.cdn", DEPLOYMENT_CATEGORIES.CDN],
|
||||||
[DEPLOY_PROVIDERS["1PANEL_SITE"], "provider.1panel.site", DEPLOY_CATEGORIES.WEBSITE],
|
[DEPLOYMENT_PROVIDERS["1PANEL_SITE"], "provider.1panel.site", DEPLOYMENT_CATEGORIES.WEBSITE],
|
||||||
[DEPLOY_PROVIDERS["1PANEL_CONSOLE"], "provider.1panel.console", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS["1PANEL_CONSOLE"], "provider.1panel.console", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.BAOTAPANEL_SITE, "provider.baotapanel.site", DEPLOY_CATEGORIES.WEBSITE],
|
[DEPLOYMENT_PROVIDERS.BAOTAPANEL_SITE, "provider.baotapanel.site", DEPLOYMENT_CATEGORIES.WEBSITE],
|
||||||
[DEPLOY_PROVIDERS.BAOTAPANEL_CONSOLE, "provider.baotapanel.console", DEPLOY_CATEGORIES.OTHER],
|
[DEPLOYMENT_PROVIDERS.BAOTAPANEL_CONSOLE, "provider.baotapanel.console", DEPLOYMENT_CATEGORIES.OTHER],
|
||||||
[DEPLOY_PROVIDERS.SAFELINE, "provider.safeline", DEPLOY_CATEGORIES.FIREWALL],
|
[DEPLOYMENT_PROVIDERS.SAFELINE, "provider.safeline", DEPLOYMENT_CATEGORIES.FIREWALL],
|
||||||
].map(([type, name, category, builtin]) => [
|
].map(([type, name, category, builtin]) => [
|
||||||
type,
|
type,
|
||||||
{
|
{
|
||||||
type: type as DeployProviderType,
|
type: type as DeploymentProviderType,
|
||||||
name: name,
|
name: name,
|
||||||
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
||||||
provider: type.split("-")[0] as AccessProviderType,
|
provider: type.split("-")[0] as AccessProviderType,
|
||||||
category: category as DeployCategoryType,
|
category: category as DeploymentCategoryType,
|
||||||
builtin: builtin === "builtin",
|
builtin: builtin === "builtin",
|
||||||
},
|
},
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
// #endregion
|
// #endregion
|
||||||
|
|
||||||
// #region NotifyProvider
|
// #region NotificationProvider
|
||||||
/*
|
/*
|
||||||
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
注意:如果追加新的常量值,请保持以 ASCII 排序。
|
||||||
NOTICE: If you add new constant, please keep ASCII order.
|
NOTICE: If you add new constant, please keep ASCII order.
|
||||||
*/
|
*/
|
||||||
export const NOTIFY_PROVIDERS = Object.freeze({
|
export const NOTIFICATION_PROVIDERS = Object.freeze({
|
||||||
WEBHOOK: `${ACCESS_PROVIDERS.WEBHOOK}`,
|
WEBHOOK: `${ACCESS_PROVIDERS.WEBHOOK}`,
|
||||||
} as const);
|
} as const);
|
||||||
|
|
||||||
export type NotifyProviderType = (typeof APPLY_CA_PROVIDERS)[keyof typeof APPLY_CA_PROVIDERS];
|
export type NotificationProviderType = (typeof CA_PROVIDERS)[keyof typeof CA_PROVIDERS];
|
||||||
|
|
||||||
export type NotifyProvider = {
|
export type NotificationProvider = {
|
||||||
type: NotifyProviderType;
|
type: NotificationProviderType;
|
||||||
name: string;
|
name: string;
|
||||||
icon: string;
|
icon: string;
|
||||||
provider: AccessProviderType;
|
provider: AccessProviderType;
|
||||||
};
|
};
|
||||||
|
|
||||||
export const notifyProvidersMap: Map<NotifyProvider["type"] | string, NotifyProvider> = new Map(
|
export const notificationProvidersMap: Map<NotificationProvider["type"] | string, NotificationProvider> = new Map(
|
||||||
/*
|
/*
|
||||||
注意:此处的顺序决定显示在前端的顺序。
|
注意:此处的顺序决定显示在前端的顺序。
|
||||||
NOTICE: The following order determines the order displayed at the frontend.
|
NOTICE: The following order determines the order displayed at the frontend.
|
||||||
*/
|
*/
|
||||||
[[NOTIFY_PROVIDERS.WEBHOOK]].map(([type]) => [
|
[[NOTIFICATION_PROVIDERS.WEBHOOK]].map(([type]) => [
|
||||||
type,
|
type,
|
||||||
{
|
{
|
||||||
type: type as ApplyCAProviderType,
|
type: type as CAProviderType,
|
||||||
name: accessProvidersMap.get(type.split("-")[0])!.name,
|
name: accessProvidersMap.get(type.split("-")[0])!.name,
|
||||||
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
icon: accessProvidersMap.get(type.split("-")[0])!.icon,
|
||||||
provider: type.split("-")[0] as AccessProviderType,
|
provider: type.split("-")[0] as AccessProviderType,
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { type ApplyCAProviderType } from "./provider";
|
import { type CAProviderType } from "./provider";
|
||||||
|
|
||||||
export const SETTINGS_NAMES = Object.freeze({
|
export const SETTINGS_NAMES = Object.freeze({
|
||||||
EMAILS: "emails",
|
EMAILS: "emails",
|
||||||
@ -190,7 +190,7 @@ export const notifyChannelsMap: Map<NotifyChannel["type"], NotifyChannel> = new
|
|||||||
|
|
||||||
// #region Settings: SSLProvider
|
// #region Settings: SSLProvider
|
||||||
export type SSLProviderSettingsContent = {
|
export type SSLProviderSettingsContent = {
|
||||||
provider: ApplyCAProviderType;
|
provider: CAProviderType;
|
||||||
config: {
|
config: {
|
||||||
[key: string]: Record<string, unknown> | undefined;
|
[key: string]: Record<string, unknown> | undefined;
|
||||||
};
|
};
|
||||||
|
@ -7,7 +7,7 @@ import { produce } from "immer";
|
|||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
|
|
||||||
import Show from "@/components/Show";
|
import Show from "@/components/Show";
|
||||||
import { APPLY_CA_PROVIDERS, type ApplyCAProviderType } from "@/domain/provider";
|
import { type CAProviderType, CA_PROVIDERS } from "@/domain/provider";
|
||||||
import { SETTINGS_NAMES, type SSLProviderSettingsContent, type SettingsModel } from "@/domain/settings";
|
import { SETTINGS_NAMES, type SSLProviderSettingsContent, type SettingsModel } from "@/domain/settings";
|
||||||
import { useAntdForm } from "@/hooks";
|
import { useAntdForm } from "@/hooks";
|
||||||
import { get as getSettings, save as saveSettings } from "@/repository/settings";
|
import { get as getSettings, save as saveSettings } from "@/repository/settings";
|
||||||
@ -27,14 +27,14 @@ const SSLProviderEditFormLetsEncryptConfig = () => {
|
|||||||
const { pending, settings, updateSettings } = useContext(SSLProviderContext);
|
const { pending, settings, updateSettings } = useContext(SSLProviderContext);
|
||||||
|
|
||||||
const { form: formInst, formProps } = useAntdForm<NonNullable<unknown>>({
|
const { form: formInst, formProps } = useAntdForm<NonNullable<unknown>>({
|
||||||
initialValues: settings?.content?.config?.[APPLY_CA_PROVIDERS.LETSENCRYPT],
|
initialValues: settings?.content?.config?.[CA_PROVIDERS.LETSENCRYPT],
|
||||||
onSubmit: async (values) => {
|
onSubmit: async (values) => {
|
||||||
const newSettings = produce(settings, (draft) => {
|
const newSettings = produce(settings, (draft) => {
|
||||||
draft.content ??= {} as SSLProviderSettingsContent;
|
draft.content ??= {} as SSLProviderSettingsContent;
|
||||||
draft.content.provider = APPLY_CA_PROVIDERS.LETSENCRYPT;
|
draft.content.provider = CA_PROVIDERS.LETSENCRYPT;
|
||||||
|
|
||||||
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
||||||
draft.content.config[APPLY_CA_PROVIDERS.LETSENCRYPT] = values;
|
draft.content.config[CA_PROVIDERS.LETSENCRYPT] = values;
|
||||||
});
|
});
|
||||||
await updateSettings(newSettings);
|
await updateSettings(newSettings);
|
||||||
|
|
||||||
@ -44,7 +44,7 @@ const SSLProviderEditFormLetsEncryptConfig = () => {
|
|||||||
|
|
||||||
const [formChanged, setFormChanged] = useState(false);
|
const [formChanged, setFormChanged] = useState(false);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setFormChanged(settings?.content?.provider !== APPLY_CA_PROVIDERS.LETSENCRYPT);
|
setFormChanged(settings?.content?.provider !== CA_PROVIDERS.LETSENCRYPT);
|
||||||
}, [settings?.content?.provider]);
|
}, [settings?.content?.provider]);
|
||||||
|
|
||||||
const handleFormChange = () => {
|
const handleFormChange = () => {
|
||||||
@ -68,14 +68,14 @@ const SSLProviderEditFormLetsEncryptStagingConfig = () => {
|
|||||||
const { pending, settings, updateSettings } = useContext(SSLProviderContext);
|
const { pending, settings, updateSettings } = useContext(SSLProviderContext);
|
||||||
|
|
||||||
const { form: formInst, formProps } = useAntdForm<NonNullable<unknown>>({
|
const { form: formInst, formProps } = useAntdForm<NonNullable<unknown>>({
|
||||||
initialValues: settings?.content?.config?.[APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING],
|
initialValues: settings?.content?.config?.[CA_PROVIDERS.LETSENCRYPTSTAGING],
|
||||||
onSubmit: async (values) => {
|
onSubmit: async (values) => {
|
||||||
const newSettings = produce(settings, (draft) => {
|
const newSettings = produce(settings, (draft) => {
|
||||||
draft.content ??= {} as SSLProviderSettingsContent;
|
draft.content ??= {} as SSLProviderSettingsContent;
|
||||||
draft.content.provider = APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING;
|
draft.content.provider = CA_PROVIDERS.LETSENCRYPTSTAGING;
|
||||||
|
|
||||||
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
||||||
draft.content.config[APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING] = values;
|
draft.content.config[CA_PROVIDERS.LETSENCRYPTSTAGING] = values;
|
||||||
});
|
});
|
||||||
await updateSettings(newSettings);
|
await updateSettings(newSettings);
|
||||||
|
|
||||||
@ -85,7 +85,7 @@ const SSLProviderEditFormLetsEncryptStagingConfig = () => {
|
|||||||
|
|
||||||
const [formChanged, setFormChanged] = useState(false);
|
const [formChanged, setFormChanged] = useState(false);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setFormChanged(settings?.content?.provider !== APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING);
|
setFormChanged(settings?.content?.provider !== CA_PROVIDERS.LETSENCRYPTSTAGING);
|
||||||
}, [settings?.content?.provider]);
|
}, [settings?.content?.provider]);
|
||||||
|
|
||||||
const handleFormChange = () => {
|
const handleFormChange = () => {
|
||||||
@ -113,14 +113,14 @@ const SSLProviderEditFormBuypassConfig = () => {
|
|||||||
const { pending, settings, updateSettings } = useContext(SSLProviderContext);
|
const { pending, settings, updateSettings } = useContext(SSLProviderContext);
|
||||||
|
|
||||||
const { form: formInst, formProps } = useAntdForm<NonNullable<unknown>>({
|
const { form: formInst, formProps } = useAntdForm<NonNullable<unknown>>({
|
||||||
initialValues: settings?.content?.config?.[APPLY_CA_PROVIDERS.BUYPASS],
|
initialValues: settings?.content?.config?.[CA_PROVIDERS.BUYPASS],
|
||||||
onSubmit: async (values) => {
|
onSubmit: async (values) => {
|
||||||
const newSettings = produce(settings, (draft) => {
|
const newSettings = produce(settings, (draft) => {
|
||||||
draft.content ??= {} as SSLProviderSettingsContent;
|
draft.content ??= {} as SSLProviderSettingsContent;
|
||||||
draft.content.provider = APPLY_CA_PROVIDERS.BUYPASS;
|
draft.content.provider = CA_PROVIDERS.BUYPASS;
|
||||||
|
|
||||||
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
||||||
draft.content.config[APPLY_CA_PROVIDERS.BUYPASS] = values;
|
draft.content.config[CA_PROVIDERS.BUYPASS] = values;
|
||||||
});
|
});
|
||||||
await updateSettings(newSettings);
|
await updateSettings(newSettings);
|
||||||
|
|
||||||
@ -130,7 +130,7 @@ const SSLProviderEditFormBuypassConfig = () => {
|
|||||||
|
|
||||||
const [formChanged, setFormChanged] = useState(false);
|
const [formChanged, setFormChanged] = useState(false);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setFormChanged(settings?.content?.provider !== APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING);
|
setFormChanged(settings?.content?.provider !== CA_PROVIDERS.LETSENCRYPTSTAGING);
|
||||||
}, [settings?.content?.provider]);
|
}, [settings?.content?.provider]);
|
||||||
|
|
||||||
const handleFormChange = () => {
|
const handleFormChange = () => {
|
||||||
@ -165,14 +165,14 @@ const SSLProviderEditFormGoogleTrustServicesConfig = () => {
|
|||||||
});
|
});
|
||||||
const formRule = createSchemaFieldRule(formSchema);
|
const formRule = createSchemaFieldRule(formSchema);
|
||||||
const { form: formInst, formProps } = useAntdForm<z.infer<typeof formSchema>>({
|
const { form: formInst, formProps } = useAntdForm<z.infer<typeof formSchema>>({
|
||||||
initialValues: settings?.content?.config?.[APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES],
|
initialValues: settings?.content?.config?.[CA_PROVIDERS.GOOGLETRUSTSERVICES],
|
||||||
onSubmit: async (values) => {
|
onSubmit: async (values) => {
|
||||||
const newSettings = produce(settings, (draft) => {
|
const newSettings = produce(settings, (draft) => {
|
||||||
draft.content ??= {} as SSLProviderSettingsContent;
|
draft.content ??= {} as SSLProviderSettingsContent;
|
||||||
draft.content.provider = APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES;
|
draft.content.provider = CA_PROVIDERS.GOOGLETRUSTSERVICES;
|
||||||
|
|
||||||
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
||||||
draft.content.config[APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES] = values;
|
draft.content.config[CA_PROVIDERS.GOOGLETRUSTSERVICES] = values;
|
||||||
});
|
});
|
||||||
await updateSettings(newSettings);
|
await updateSettings(newSettings);
|
||||||
|
|
||||||
@ -182,7 +182,7 @@ const SSLProviderEditFormGoogleTrustServicesConfig = () => {
|
|||||||
|
|
||||||
const [formChanged, setFormChanged] = useState(false);
|
const [formChanged, setFormChanged] = useState(false);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setFormChanged(settings?.content?.provider !== APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES);
|
setFormChanged(settings?.content?.provider !== CA_PROVIDERS.GOOGLETRUSTSERVICES);
|
||||||
}, [settings?.content?.provider]);
|
}, [settings?.content?.provider]);
|
||||||
|
|
||||||
const handleFormChange = () => {
|
const handleFormChange = () => {
|
||||||
@ -235,14 +235,14 @@ const SSLProviderEditFormSSLComConfig = () => {
|
|||||||
});
|
});
|
||||||
const formRule = createSchemaFieldRule(formSchema);
|
const formRule = createSchemaFieldRule(formSchema);
|
||||||
const { form: formInst, formProps } = useAntdForm<z.infer<typeof formSchema>>({
|
const { form: formInst, formProps } = useAntdForm<z.infer<typeof formSchema>>({
|
||||||
initialValues: settings?.content?.config?.[APPLY_CA_PROVIDERS.SSLCOM],
|
initialValues: settings?.content?.config?.[CA_PROVIDERS.SSLCOM],
|
||||||
onSubmit: async (values) => {
|
onSubmit: async (values) => {
|
||||||
const newSettings = produce(settings, (draft) => {
|
const newSettings = produce(settings, (draft) => {
|
||||||
draft.content ??= {} as SSLProviderSettingsContent;
|
draft.content ??= {} as SSLProviderSettingsContent;
|
||||||
draft.content.provider = APPLY_CA_PROVIDERS.SSLCOM;
|
draft.content.provider = CA_PROVIDERS.SSLCOM;
|
||||||
|
|
||||||
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
||||||
draft.content.config[APPLY_CA_PROVIDERS.SSLCOM] = values;
|
draft.content.config[CA_PROVIDERS.SSLCOM] = values;
|
||||||
});
|
});
|
||||||
await updateSettings(newSettings);
|
await updateSettings(newSettings);
|
||||||
|
|
||||||
@ -252,7 +252,7 @@ const SSLProviderEditFormSSLComConfig = () => {
|
|||||||
|
|
||||||
const [formChanged, setFormChanged] = useState(false);
|
const [formChanged, setFormChanged] = useState(false);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setFormChanged(settings?.content?.provider !== APPLY_CA_PROVIDERS.SSLCOM);
|
setFormChanged(settings?.content?.provider !== CA_PROVIDERS.SSLCOM);
|
||||||
}, [settings?.content?.provider]);
|
}, [settings?.content?.provider]);
|
||||||
|
|
||||||
const handleFormChange = () => {
|
const handleFormChange = () => {
|
||||||
@ -305,14 +305,14 @@ const SSLProviderEditFormZeroSSLConfig = () => {
|
|||||||
});
|
});
|
||||||
const formRule = createSchemaFieldRule(formSchema);
|
const formRule = createSchemaFieldRule(formSchema);
|
||||||
const { form: formInst, formProps } = useAntdForm<z.infer<typeof formSchema>>({
|
const { form: formInst, formProps } = useAntdForm<z.infer<typeof formSchema>>({
|
||||||
initialValues: settings?.content?.config?.[APPLY_CA_PROVIDERS.ZEROSSL],
|
initialValues: settings?.content?.config?.[CA_PROVIDERS.ZEROSSL],
|
||||||
onSubmit: async (values) => {
|
onSubmit: async (values) => {
|
||||||
const newSettings = produce(settings, (draft) => {
|
const newSettings = produce(settings, (draft) => {
|
||||||
draft.content ??= {} as SSLProviderSettingsContent;
|
draft.content ??= {} as SSLProviderSettingsContent;
|
||||||
draft.content.provider = APPLY_CA_PROVIDERS.ZEROSSL;
|
draft.content.provider = CA_PROVIDERS.ZEROSSL;
|
||||||
|
|
||||||
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
draft.content.config ??= {} as SSLProviderSettingsContent["config"];
|
||||||
draft.content.config[APPLY_CA_PROVIDERS.ZEROSSL] = values;
|
draft.content.config[CA_PROVIDERS.ZEROSSL] = values;
|
||||||
});
|
});
|
||||||
await updateSettings(newSettings);
|
await updateSettings(newSettings);
|
||||||
|
|
||||||
@ -322,7 +322,7 @@ const SSLProviderEditFormZeroSSLConfig = () => {
|
|||||||
|
|
||||||
const [formChanged, setFormChanged] = useState(false);
|
const [formChanged, setFormChanged] = useState(false);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setFormChanged(settings?.content?.provider !== APPLY_CA_PROVIDERS.ZEROSSL);
|
setFormChanged(settings?.content?.provider !== CA_PROVIDERS.ZEROSSL);
|
||||||
}, [settings?.content?.provider]);
|
}, [settings?.content?.provider]);
|
||||||
|
|
||||||
const handleFormChange = () => {
|
const handleFormChange = () => {
|
||||||
@ -383,20 +383,20 @@ const SettingsSSLProvider = () => {
|
|||||||
fetchData();
|
fetchData();
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const [providerType, setProviderType] = useState<ApplyCAProviderType>(APPLY_CA_PROVIDERS.LETSENCRYPT);
|
const [providerType, setProviderType] = useState<CAProviderType>(CA_PROVIDERS.LETSENCRYPT);
|
||||||
const providerFormEl = useMemo(() => {
|
const providerFormEl = useMemo(() => {
|
||||||
switch (providerType) {
|
switch (providerType) {
|
||||||
case APPLY_CA_PROVIDERS.LETSENCRYPT:
|
case CA_PROVIDERS.LETSENCRYPT:
|
||||||
return <SSLProviderEditFormLetsEncryptConfig />;
|
return <SSLProviderEditFormLetsEncryptConfig />;
|
||||||
case APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING:
|
case CA_PROVIDERS.LETSENCRYPTSTAGING:
|
||||||
return <SSLProviderEditFormLetsEncryptStagingConfig />;
|
return <SSLProviderEditFormLetsEncryptStagingConfig />;
|
||||||
case APPLY_CA_PROVIDERS.BUYPASS:
|
case CA_PROVIDERS.BUYPASS:
|
||||||
return <SSLProviderEditFormBuypassConfig />;
|
return <SSLProviderEditFormBuypassConfig />;
|
||||||
case APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES:
|
case CA_PROVIDERS.GOOGLETRUSTSERVICES:
|
||||||
return <SSLProviderEditFormGoogleTrustServicesConfig />;
|
return <SSLProviderEditFormGoogleTrustServicesConfig />;
|
||||||
case APPLY_CA_PROVIDERS.SSLCOM:
|
case CA_PROVIDERS.SSLCOM:
|
||||||
return <SSLProviderEditFormSSLComConfig />;
|
return <SSLProviderEditFormSSLComConfig />;
|
||||||
case APPLY_CA_PROVIDERS.ZEROSSL:
|
case CA_PROVIDERS.ZEROSSL:
|
||||||
return <SSLProviderEditFormZeroSSLConfig />;
|
return <SSLProviderEditFormZeroSSLConfig />;
|
||||||
}
|
}
|
||||||
}, [providerType]);
|
}, [providerType]);
|
||||||
@ -431,48 +431,48 @@ const SettingsSSLProvider = () => {
|
|||||||
<Show when={!loading} fallback={<Skeleton active />}>
|
<Show when={!loading} fallback={<Skeleton active />}>
|
||||||
<Form form={formInst} disabled={formPending} layout="vertical" initialValues={{ provider: providerType }}>
|
<Form form={formInst} disabled={formPending} layout="vertical" initialValues={{ provider: providerType }}>
|
||||||
<Form.Item className="mb-2" name="provider" label={t("settings.sslprovider.form.provider.label")}>
|
<Form.Item className="mb-2" name="provider" label={t("settings.sslprovider.form.provider.label")}>
|
||||||
<CheckCard.Group className="w-full" onChange={(value) => setProviderType(value as ApplyCAProviderType)}>
|
<CheckCard.Group className="w-full" onChange={(value) => setProviderType(value as CAProviderType)}>
|
||||||
<CheckCard
|
<CheckCard
|
||||||
avatar={<img src={"/imgs/providers/letsencrypt.svg"} className="size-8" />}
|
avatar={<img src={"/imgs/providers/letsencrypt.svg"} className="size-8" />}
|
||||||
size="small"
|
size="small"
|
||||||
title={t("provider.letsencrypt")}
|
title={t("provider.letsencrypt")}
|
||||||
description="letsencrypt.org"
|
description="letsencrypt.org"
|
||||||
value={APPLY_CA_PROVIDERS.LETSENCRYPT}
|
value={CA_PROVIDERS.LETSENCRYPT}
|
||||||
/>
|
/>
|
||||||
<CheckCard
|
<CheckCard
|
||||||
avatar={<img src={"/imgs/providers/letsencrypt.svg"} className="size-8" />}
|
avatar={<img src={"/imgs/providers/letsencrypt.svg"} className="size-8" />}
|
||||||
size="small"
|
size="small"
|
||||||
title={t("provider.letsencryptstaging")}
|
title={t("provider.letsencryptstaging")}
|
||||||
description="letsencrypt.org"
|
description="letsencrypt.org"
|
||||||
value={APPLY_CA_PROVIDERS.LETSENCRYPTSTAGING}
|
value={CA_PROVIDERS.LETSENCRYPTSTAGING}
|
||||||
/>
|
/>
|
||||||
<CheckCard
|
<CheckCard
|
||||||
avatar={<img src={"/imgs/providers/buypass.png"} className="size-8" />}
|
avatar={<img src={"/imgs/providers/buypass.png"} className="size-8" />}
|
||||||
size="small"
|
size="small"
|
||||||
title={t("provider.buypass")}
|
title={t("provider.buypass")}
|
||||||
description="buypass.com"
|
description="buypass.com"
|
||||||
value={APPLY_CA_PROVIDERS.BUYPASS}
|
value={CA_PROVIDERS.BUYPASS}
|
||||||
/>
|
/>
|
||||||
<CheckCard
|
<CheckCard
|
||||||
avatar={<img src={"/imgs/providers/google.svg"} className="size-8" />}
|
avatar={<img src={"/imgs/providers/google.svg"} className="size-8" />}
|
||||||
size="small"
|
size="small"
|
||||||
title={t("provider.googletrustservices")}
|
title={t("provider.googletrustservices")}
|
||||||
description="pki.goog"
|
description="pki.goog"
|
||||||
value={APPLY_CA_PROVIDERS.GOOGLETRUSTSERVICES}
|
value={CA_PROVIDERS.GOOGLETRUSTSERVICES}
|
||||||
/>
|
/>
|
||||||
<CheckCard
|
<CheckCard
|
||||||
avatar={<img src={"/imgs/providers/sslcom.svg"} className="size-8" />}
|
avatar={<img src={"/imgs/providers/sslcom.svg"} className="size-8" />}
|
||||||
size="small"
|
size="small"
|
||||||
title={t("provider.sslcom")}
|
title={t("provider.sslcom")}
|
||||||
description="ssl.com"
|
description="ssl.com"
|
||||||
value={APPLY_CA_PROVIDERS.SSLCOM}
|
value={CA_PROVIDERS.SSLCOM}
|
||||||
/>
|
/>
|
||||||
<CheckCard
|
<CheckCard
|
||||||
avatar={<img src={"/imgs/providers/zerossl.svg"} className="size-8" />}
|
avatar={<img src={"/imgs/providers/zerossl.svg"} className="size-8" />}
|
||||||
size="small"
|
size="small"
|
||||||
title={t("provider.zerossl")}
|
title={t("provider.zerossl")}
|
||||||
description="zerossl.com"
|
description="zerossl.com"
|
||||||
value={APPLY_CA_PROVIDERS.ZEROSSL}
|
value={CA_PROVIDERS.ZEROSSL}
|
||||||
/>
|
/>
|
||||||
</CheckCard.Group>
|
</CheckCard.Group>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user