mirror of
https://github.com/onepanelio/onepanel.git
synced 2025-10-27 23:31:27 +08:00
fix: Cron update params and field types
This commit is contained in:
@@ -10,7 +10,6 @@ import (
|
|||||||
"github.com/onepanelio/core/pkg/util/pagination"
|
"github.com/onepanelio/core/pkg/util/pagination"
|
||||||
log "github.com/sirupsen/logrus"
|
log "github.com/sirupsen/logrus"
|
||||||
"google.golang.org/grpc/codes"
|
"google.golang.org/grpc/codes"
|
||||||
"gopkg.in/yaml.v2"
|
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"regexp"
|
"regexp"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -52,6 +51,7 @@ func (c *Client) UpdateCronWorkflow(namespace string, name string, cronWorkflow
|
|||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rawCronManifest := cronWorkflow.Manifest
|
||||||
workflowTemplateManifest := workflowTemplate.GetManifestBytes()
|
workflowTemplateManifest := workflowTemplate.GetManifestBytes()
|
||||||
|
|
||||||
if err := cronWorkflow.AddToManifestSpec("workflowSpec", string(workflowTemplateManifest)); err != nil {
|
if err := cronWorkflow.AddToManifestSpec("workflowSpec", string(workflowTemplateManifest)); err != nil {
|
||||||
@@ -65,7 +65,7 @@ func (c *Client) UpdateCronWorkflow(namespace string, name string, cronWorkflow
|
|||||||
(*opts.Labels)[workflowTemplateVersionLabelKey] = fmt.Sprint(workflowTemplate.Version)
|
(*opts.Labels)[workflowTemplateVersionLabelKey] = fmt.Sprint(workflowTemplate.Version)
|
||||||
var argoCronWorkflow wfv1.CronWorkflow
|
var argoCronWorkflow wfv1.CronWorkflow
|
||||||
var argoCronWorkflowSpec wfv1.CronWorkflowSpec
|
var argoCronWorkflowSpec wfv1.CronWorkflowSpec
|
||||||
if err := yaml.Unmarshal([]byte(cronWorkflow.Manifest), &argoCronWorkflowSpec); err != nil {
|
if err := argojson.UnmarshalStrict([]byte(rawCronManifest), &argoCronWorkflowSpec); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
argoCronWorkflow.Spec = argoCronWorkflowSpec
|
argoCronWorkflow.Spec = argoCronWorkflowSpec
|
||||||
|
|||||||
@@ -56,7 +56,6 @@ func (c *CronWorkflowServer) CreateCronWorkflow(ctx context.Context, req *api.Cr
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, param := range req.CronWorkflow.WorkflowExecution.Parameters {
|
for _, param := range req.CronWorkflow.WorkflowExecution.Parameters {
|
||||||
|
|
||||||
options := make([]*v1.ParameterOption, 0)
|
options := make([]*v1.ParameterOption, 0)
|
||||||
for _, option := range param.Options {
|
for _, option := range param.Options {
|
||||||
options = append(options, &v1.ParameterOption{
|
options = append(options, &v1.ParameterOption{
|
||||||
@@ -103,9 +102,22 @@ func (c *CronWorkflowServer) UpdateCronWorkflow(ctx context.Context, req *api.Up
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
for _, param := range req.CronWorkflow.WorkflowExecution.Parameters {
|
for _, param := range req.CronWorkflow.WorkflowExecution.Parameters {
|
||||||
|
options := make([]*v1.ParameterOption, 0)
|
||||||
|
for _, option := range param.Options {
|
||||||
|
options = append(options, &v1.ParameterOption{
|
||||||
|
Name: option.Name,
|
||||||
|
Value: option.Value,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
workflow.Parameters = append(workflow.Parameters, v1.Parameter{
|
workflow.Parameters = append(workflow.Parameters, v1.Parameter{
|
||||||
Name: param.Name,
|
Name: param.Name,
|
||||||
Value: ptr.String(param.Value),
|
Value: ptr.String(param.Value),
|
||||||
|
Type: param.Type,
|
||||||
|
DisplayName: ¶m.DisplayName,
|
||||||
|
Hint: ¶m.Hint,
|
||||||
|
Options: options,
|
||||||
|
Required: param.Required,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user