WebP策略变化时只更新相关配置

This commit is contained in:
GoEdgeLab
2023-12-11 11:08:19 +08:00
parent 7f53748683
commit 9c9cee5537
5 changed files with 51 additions and 9 deletions

View File

@@ -2257,3 +2257,39 @@ func (this *NodeService) UpdateNodeAPIConfig(ctx context.Context, req *pb.Update
return this.Success()
}
// FindNodeWebPPolicies 查找节点的WebP策略
func (this *NodeService) FindNodeWebPPolicies(ctx context.Context, req *pb.FindNodeWebPPoliciesRequest) (*pb.FindNodeWebPPoliciesResponse, error) {
nodeId, err := this.ValidateNode(ctx)
if err != nil {
return nil, err
}
var tx = this.NullTx()
clusterIds, err := models.SharedNodeDAO.FindEnabledAndOnNodeClusterIds(tx, nodeId)
if err != nil {
return nil, err
}
var pbPolicies = []*pb.FindNodeWebPPoliciesResponse_WebPPolicy{}
for _, clusterId := range clusterIds {
policy, err := models.SharedNodeClusterDAO.FindClusterWebPPolicy(tx, clusterId, nil)
if err != nil {
return nil, err
}
if policy == nil {
continue
}
policyJSON, err := json.Marshal(policy)
if err != nil {
return nil, err
}
pbPolicies = append(pbPolicies, &pb.FindNodeWebPPoliciesResponse_WebPPolicy{
NodeClusterId: clusterId,
WebPPolicyJSON: policyJSON,
})
}
return &pb.FindNodeWebPPoliciesResponse{
WebPPolicies: pbPolicies,
}, nil
}

View File

@@ -1126,14 +1126,14 @@ func (this *NodeClusterService) FindEnabledNodeClusterConfigInfo(ctx context.Con
// webp
if models.IsNotNull(cluster.Webp) {
var webpPolicy = &nodeconfigs.WebPImagePolicy{}
var webpPolicy = nodeconfigs.NewWebPImagePolicy()
err = json.Unmarshal(cluster.Webp, webpPolicy)
if err != nil {
return nil, err
}
result.WebpIsOn = webpPolicy.IsOn
result.WebPIsOn = webpPolicy.IsOn
} else {
result.WebpIsOn = nodeconfigs.DefaultWebPImagePolicy.IsOn
result.WebPIsOn = nodeconfigs.DefaultWebPImagePolicy.IsOn
}
// UAM
@@ -1247,8 +1247,8 @@ func (this *NodeClusterService) UpdateNodeClusterWebPPolicy(ctx context.Context,
return nil, err
}
var webpPolicy = &nodeconfigs.WebPImagePolicy{}
err = json.Unmarshal(req.WebpPolicyJSON, webpPolicy)
var webpPolicy = nodeconfigs.NewWebPImagePolicy()
err = json.Unmarshal(req.WebPPolicyJSON, webpPolicy)
if err != nil {
return nil, err
}