mirror of
https://github.com/onepanelio/onepanel.git
synced 2025-10-27 23:31:27 +08:00
Merge branch 'feat/core.144-workflow.stats' into feat/dev-core-144-workflow.stats
This commit is contained in:
@@ -69,7 +69,7 @@ func (c *Client) UpdateCronWorkflow(namespace string, name string, cronWorkflow
|
||||
|
||||
for _, wf := range workflows {
|
||||
argoCronWorkflow.Spec.WorkflowSpec = wf.Spec
|
||||
argoCreatedCronWorkflow, err := c.updateCronWorkflow(namespace, name, &wf, &argoCronWorkflow, opts)
|
||||
argoCreatedCronWorkflow, err := c.updateCronWorkflow(namespace, name, &workflowTemplate.ID, &wf, &argoCronWorkflow, opts)
|
||||
if err != nil {
|
||||
log.WithFields(log.Fields{
|
||||
"Namespace": namespace,
|
||||
@@ -146,7 +146,7 @@ func (c *Client) CreateCronWorkflow(namespace string, cronWorkflow *CronWorkflow
|
||||
|
||||
for _, wf := range workflows {
|
||||
argoCronWorkflow.Spec.WorkflowSpec = wf.Spec
|
||||
argoCreatedCronWorkflow, err := c.createCronWorkflow(namespace, &wf, &argoCronWorkflow, opts)
|
||||
argoCreatedCronWorkflow, err := c.createCronWorkflow(namespace, &workflowTemplate.ID, &wf, &argoCronWorkflow, opts)
|
||||
if err != nil {
|
||||
log.WithFields(log.Fields{
|
||||
"Namespace": namespace,
|
||||
@@ -311,7 +311,7 @@ func (c *Client) ListCronWorkflows(namespace, workflowTemplateUID string) (cronW
|
||||
return
|
||||
}
|
||||
|
||||
func (c *Client) updateCronWorkflow(namespace string, name string, wf *wfv1.Workflow, cwf *wfv1.CronWorkflow, opts *WorkflowExecutionOptions) (updatedCronWorkflow *wfv1.CronWorkflow, err error) {
|
||||
func (c *Client) updateCronWorkflow(namespace string, name string, workflowTemplateId *uint64, wf *wfv1.Workflow, cwf *wfv1.CronWorkflow, opts *WorkflowExecutionOptions) (updatedCronWorkflow *wfv1.CronWorkflow, err error) {
|
||||
//Make sure the CronWorkflow exists before we edit it
|
||||
toUpdateCWF, err := c.ArgoprojV1alpha1().CronWorkflows(namespace).Get(name, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
@@ -367,6 +367,26 @@ func (c *Client) updateCronWorkflow(namespace string, name string, wf *wfv1.Work
|
||||
if err = c.injectAutomatedFields(namespace, wf, opts); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
exitHandlerStepName, exitHandlerStepTemplate, exitHandlerStepWhen, err, exitHandlerTemplate := GetExitHandlerWorkflowStatistics(c, namespace, workflowTemplateId)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if exitHandlerStepTemplate != "" {
|
||||
exitHandler := wfv1.Template{
|
||||
Name: "exit-handler",
|
||||
Steps: []wfv1.ParallelSteps{
|
||||
{
|
||||
Steps: []wfv1.WorkflowStep{
|
||||
{Name: exitHandlerStepName, Template: exitHandlerStepTemplate, When: exitHandlerStepWhen},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
wf.Spec.OnExit = "exit-handler"
|
||||
wf.Spec.Templates = append(wf.Spec.Templates, exitHandler, exitHandlerTemplate)
|
||||
}
|
||||
|
||||
cwf.Spec.WorkflowSpec = wf.Spec
|
||||
cwf.Spec.WorkflowMetadata = &wf.ObjectMeta
|
||||
|
||||
@@ -390,7 +410,7 @@ func (c *Client) updateCronWorkflow(namespace string, name string, wf *wfv1.Work
|
||||
return
|
||||
}
|
||||
|
||||
func (c *Client) createCronWorkflow(namespace string, wf *wfv1.Workflow, cwf *wfv1.CronWorkflow, opts *WorkflowExecutionOptions) (createdCronWorkflow *wfv1.CronWorkflow, err error) {
|
||||
func (c *Client) createCronWorkflow(namespace string, workflowTemplateId *uint64, wf *wfv1.Workflow, cwf *wfv1.CronWorkflow, opts *WorkflowExecutionOptions) (createdCronWorkflow *wfv1.CronWorkflow, err error) {
|
||||
if opts == nil {
|
||||
opts = &WorkflowExecutionOptions{}
|
||||
}
|
||||
@@ -435,6 +455,26 @@ func (c *Client) createCronWorkflow(namespace string, wf *wfv1.Workflow, cwf *wf
|
||||
if err = c.injectAutomatedFields(namespace, wf, opts); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
exitHandlerStepName, exitHandlerStepTemplate, exitHandlerStepWhen, err, exitHandlerTemplate := GetExitHandlerWorkflowStatistics(c, namespace, workflowTemplateId)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if exitHandlerStepTemplate != "" {
|
||||
exitHandler := wfv1.Template{
|
||||
Name: "exit-handler",
|
||||
Steps: []wfv1.ParallelSteps{
|
||||
{
|
||||
Steps: []wfv1.WorkflowStep{
|
||||
{Name: exitHandlerStepName, Template: exitHandlerStepTemplate, When: exitHandlerStepWhen},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
wf.Spec.OnExit = "exit-handler"
|
||||
wf.Spec.Templates = append(wf.Spec.Templates, exitHandler, exitHandlerTemplate)
|
||||
}
|
||||
|
||||
cwf.Spec.WorkflowSpec = wf.Spec
|
||||
cwf.Spec.WorkflowMetadata = &wf.ObjectMeta
|
||||
|
||||
|
||||
Reference in New Issue
Block a user