diff --git a/pkg/apis/core/v1/common_types.go b/pkg/common_types.go similarity index 100% rename from pkg/apis/core/v1/common_types.go rename to pkg/common_types.go diff --git a/pkg/cron_workflow.go b/pkg/cron_workflow.go index ac0020c..dd6bb50 100644 --- a/pkg/cron_workflow.go +++ b/pkg/cron_workflow.go @@ -42,7 +42,7 @@ func (c *Client) UpdateCronWorkflow(namespace string, name string, cronWorkflow re, _ := regexp.Compile(`[^a-zA-Z0-9-]{1,}`) opts.GenerateName = strings.ToLower(re.ReplaceAllString(workflowTemplate.Name, `-`)) + "-" for _, param := range workflow.Parameters { - opts.Parameters = append(opts.Parameters, WorkflowExecutionParameter{ + opts.Parameters = append(opts.Parameters, Parameter{ Name: param.Name, Value: param.Value, }) @@ -172,7 +172,7 @@ func (c *Client) CreateCronWorkflow(namespace string, cronWorkflow *CronWorkflow re, _ := regexp.Compile(`[^a-zA-Z0-9-]{1,}`) opts.GenerateName = strings.ToLower(re.ReplaceAllString(workflowTemplate.Name, `-`)) + "-" for _, param := range workflow.Parameters { - opts.Parameters = append(opts.Parameters, WorkflowExecutionParameter{ + opts.Parameters = append(opts.Parameters, Parameter{ Name: param.Name, Value: param.Value, }) diff --git a/pkg/types.go b/pkg/types.go index a7c8a11..59009db 100644 --- a/pkg/types.go +++ b/pkg/types.go @@ -2,7 +2,6 @@ package v1 import ( "encoding/json" - v1 "github.com/onepanelio/core/pkg/apis/core/v1" "github.com/onepanelio/core/pkg/util/mapping" log "github.com/sirupsen/logrus" "gopkg.in/yaml.v2" @@ -83,8 +82,8 @@ type CronWorkflow struct { WorkflowTemplateVersionId uint64 `db:"workflow_template_version_id"` } -func (cw *CronWorkflow) GetParametersFromWorkflowSpec() ([]WorkflowExecutionParameter, error) { - var parameters []WorkflowExecutionParameter +func (cw *CronWorkflow) GetParametersFromWorkflowSpec() ([]Parameter, error) { + var parameters []Parameter mappedData := make(map[string]interface{}) @@ -113,7 +112,7 @@ func (cw *CronWorkflow) GetParametersFromWorkflowSpec() ([]WorkflowExecutionPara name := paramMap["name"].(string) value := paramMap["value"].(string) - workflowParameter := WorkflowExecutionParameter{ + workflowParameter := Parameter{ Name: name, Value: &value, } @@ -387,7 +386,7 @@ type WorkflowExecution struct { UID string Name string GenerateName string - Parameters []WorkflowExecutionParameter + Parameters []Parameter Manifest string Phase wfv1.NodePhase StartedAt *time.Time `db:"started_at"` @@ -396,9 +395,6 @@ type WorkflowExecution struct { Labels map[string]string } -// TODO: Using an alias so we can refactor out WorkflowExecutionParameter -type WorkflowExecutionParameter = v1.Parameter - type ListOptions = metav1.ListOptions type PodGCStrategy = wfv1.PodGCStrategy @@ -407,7 +403,7 @@ type WorkflowExecutionOptions struct { Name string GenerateName string Entrypoint string - Parameters []WorkflowExecutionParameter + Parameters []Parameter ServiceAccount string Labels *map[string]string ListOptions *ListOptions diff --git a/pkg/workflow_execution.go b/pkg/workflow_execution.go index 572cacc..1ca71f0 100644 --- a/pkg/workflow_execution.go +++ b/pkg/workflow_execution.go @@ -310,7 +310,7 @@ func (c *Client) CreateWorkflowExecution(namespace string, workflow *WorkflowExe re, _ := regexp.Compile(`[^a-zA-Z0-9-]{1,}`) opts.GenerateName = strings.ToLower(re.ReplaceAllString(workflowTemplate.Name, `-`)) + "-" for _, param := range workflow.Parameters { - opts.Parameters = append(opts.Parameters, WorkflowExecutionParameter{ + opts.Parameters = append(opts.Parameters, Parameter{ Name: param.Name, Value: param.Value, }) diff --git a/pkg/workspace_template.go b/pkg/workspace_template.go index f6f1ac8..b63ed85 100644 --- a/pkg/workspace_template.go +++ b/pkg/workspace_template.go @@ -5,7 +5,6 @@ import ( "fmt" sq "github.com/Masterminds/squirrel" wfv1 "github.com/argoproj/argo/pkg/apis/workflow/v1alpha1" - v1 "github.com/onepanelio/core/pkg/apis/core/v1" "github.com/onepanelio/core/pkg/util" "github.com/onepanelio/core/pkg/util/pagination" "github.com/onepanelio/core/pkg/util/ptr" @@ -16,21 +15,21 @@ import ( "sigs.k8s.io/yaml" ) -func parseWorkspaceSpec(template string) (spec *v1.WorkspaceSpec, err error) { +func parseWorkspaceSpec(template string) (spec *WorkspaceSpec, err error) { err = yaml.UnmarshalStrict([]byte(template), &spec) return } -func generateArguments(spec *v1.WorkspaceSpec, config map[string]string) (err error) { +func generateArguments(spec *WorkspaceSpec, config map[string]string) (err error) { if spec.Arguments == nil { - spec.Arguments = &v1.Arguments{ - Parameters: []v1.Parameter{}, + spec.Arguments = &Arguments{ + Parameters: []Parameter{}, } } // Resource action parameter - spec.Arguments.Parameters = append(spec.Arguments.Parameters, v1.Parameter{ + spec.Arguments.Parameters = append(spec.Arguments.Parameters, Parameter{ Name: "sys-name", Type: "input.text", Value: ptr.String("name"), @@ -39,25 +38,25 @@ func generateArguments(spec *v1.WorkspaceSpec, config map[string]string) (err er }) // Resource action parameter - spec.Arguments.Parameters = append(spec.Arguments.Parameters, v1.Parameter{ + spec.Arguments.Parameters = append(spec.Arguments.Parameters, Parameter{ Name: "sys-resource-action", Value: ptr.String("apply"), Type: "input.hidden", }) // Workspace action - spec.Arguments.Parameters = append(spec.Arguments.Parameters, v1.Parameter{ + spec.Arguments.Parameters = append(spec.Arguments.Parameters, Parameter{ Name: "sys-workspace-action", Value: ptr.String("create"), Type: "input.hidden", }) // Node pool parameter and options - var options []*v1.ParameterOption + var options []*ParameterOption if err = yaml.Unmarshal([]byte(config["applicationNodePoolOptions"]), &options); err != nil { return } - spec.Arguments.Parameters = append(spec.Arguments.Parameters, v1.Parameter{ + spec.Arguments.Parameters = append(spec.Arguments.Parameters, Parameter{ Name: "sys-node-pool", Value: ptr.String(options[0].Value), Type: "select.select", @@ -75,7 +74,7 @@ func generateArguments(spec *v1.WorkspaceSpec, config map[string]string) (err er continue } - spec.Arguments.Parameters = append(spec.Arguments.Parameters, v1.Parameter{ + spec.Arguments.Parameters = append(spec.Arguments.Parameters, Parameter{ Name: fmt.Sprintf("sys-%v-volume-size", v.Name), Type: "input.number", Value: ptr.String("20480"), @@ -91,7 +90,7 @@ func generateArguments(spec *v1.WorkspaceSpec, config map[string]string) (err er return } -func createServiceManifest(spec *v1.WorkspaceSpec) (serviceManifest string, err error) { +func createServiceManifest(spec *WorkspaceSpec) (serviceManifest string, err error) { service := corev1.Service{ TypeMeta: metav1.TypeMeta{ APIVersion: "v1", @@ -116,7 +115,7 @@ func createServiceManifest(spec *v1.WorkspaceSpec) (serviceManifest string, err return } -func createVirtualServiceManifest(spec *v1.WorkspaceSpec, config map[string]string) (virtualServiceManifest string, err error) { +func createVirtualServiceManifest(spec *WorkspaceSpec, config map[string]string) (virtualServiceManifest string, err error) { for _, h := range spec.Routes { for _, r := range h.Route { r.Destination.Host = "{{workflow.parameters.sys-name}}" @@ -143,7 +142,7 @@ func createVirtualServiceManifest(spec *v1.WorkspaceSpec, config map[string]stri return } -func createStatefulSetManifest(workspaceSpec *v1.WorkspaceSpec, config map[string]string) (statefulSetManifest string, err error) { +func createStatefulSetManifest(workspaceSpec *WorkspaceSpec, config map[string]string) (statefulSetManifest string, err error) { var volumeClaims []map[string]interface{} volumeClaimsMapped := make(map[string]bool) for _, c := range workspaceSpec.Containers { @@ -212,7 +211,7 @@ func createStatefulSetManifest(workspaceSpec *v1.WorkspaceSpec, config map[strin return } -func unmarshalWorkflowTemplate(spec *v1.WorkspaceSpec, serviceManifest, virtualServiceManifest, containersManifest string) (workflowTemplateSpecManifest string, err error) { +func unmarshalWorkflowTemplate(spec *WorkspaceSpec, serviceManifest, virtualServiceManifest, containersManifest string) (workflowTemplateSpecManifest string, err error) { var volumeClaimItems []wfv1.Item volumeClaimsMapped := make(map[string]bool) for _, c := range spec.Containers { diff --git a/pkg/workspace_template_test.go b/pkg/workspace_template_test.go index b5f069a..fe993b3 100644 --- a/pkg/workspace_template_test.go +++ b/pkg/workspace_template_test.go @@ -65,11 +65,3 @@ func TestParseWorkspaceSpec(t *testing.T) { assert.Equal(t, workspaceSpec.Containers[0].Ports[0].ContainerPort, int32(80)) assert.Equal(t, workspaceSpec.Containers[1].Ports[0].ContainerPort, int32(443)) } - -func TestCreateWorkspaceTemplate(t *testing.T) { - c := NewTestClient(mockSystemSecret, mockSystemConfigMap) - - if err := c.CreateWorkspaceTemplate("rush", workspaceTemplate); err != nil { - t.Error(err) - } -} diff --git a/pkg/apis/core/v1/workspace_types.go b/pkg/workspace_types.go similarity index 100% rename from pkg/apis/core/v1/workspace_types.go rename to pkg/workspace_types.go diff --git a/server/cron_workflow_server.go b/server/cron_workflow_server.go index 705b488..274a3df 100644 --- a/server/cron_workflow_server.go +++ b/server/cron_workflow_server.go @@ -71,7 +71,7 @@ func (c *CronWorkflowServer) CreateCronWorkflow(ctx context.Context, req *api.Cr }, } for _, param := range req.CronWorkflow.WorkflowExecution.Parameters { - workflow.Parameters = append(workflow.Parameters, v1.WorkflowExecutionParameter{ + workflow.Parameters = append(workflow.Parameters, v1.Parameter{ Name: param.Name, Value: ptr.String(param.Value), }) @@ -110,7 +110,7 @@ func (c *CronWorkflowServer) UpdateCronWorkflow(ctx context.Context, req *api.Up }, } for _, param := range req.CronWorkflow.WorkflowExecution.Parameters { - workflow.Parameters = append(workflow.Parameters, v1.WorkflowExecutionParameter{ + workflow.Parameters = append(workflow.Parameters, v1.Parameter{ Name: param.Name, Value: ptr.String(param.Value), }) diff --git a/server/workflow_server.go b/server/workflow_server.go index 139248b..2956d01 100644 --- a/server/workflow_server.go +++ b/server/workflow_server.go @@ -67,7 +67,7 @@ func (s *WorkflowServer) CreateWorkflowExecution(ctx context.Context, req *api.C }, } for _, param := range req.WorkflowExecution.Parameters { - workflow.Parameters = append(workflow.Parameters, v1.WorkflowExecutionParameter{ + workflow.Parameters = append(workflow.Parameters, v1.Parameter{ Name: param.Name, Value: ptr.String(param.Value), })