Skip to content

Commit

Permalink
Remove tb.ArrayOrString
Browse files Browse the repository at this point in the history
This was redundant with v1beta1.NewArrayOrString

Also clean up some tests for brevity/readability
  • Loading branch information
imjasonh authored and tekton-robot committed Sep 10, 2020
1 parent a162a1d commit f97f6b5
Show file tree
Hide file tree
Showing 31 changed files with 1,029 additions and 1,646 deletions.
23 changes: 5 additions & 18 deletions internal/builder/v1alpha1/param.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,27 +13,14 @@ limitations under the License.

package builder

import "github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"
import (
"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1alpha1"
"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1beta1"
)

// ParamSpecOp is an operation which modify a ParamSpec struct.
type ParamSpecOp func(*v1alpha1.ParamSpec)

// arrayOrString creates an ArrayOrString of type ParamTypeString or ParamTypeArray, based on
// how many inputs are given (>1 input will create an array, not string).
func arrayOrString(value string, additionalValues ...string) *v1alpha1.ArrayOrString {
if len(additionalValues) > 0 {
additionalValues = append([]string{value}, additionalValues...)
return &v1alpha1.ArrayOrString{
Type: v1alpha1.ParamTypeArray,
ArrayVal: additionalValues,
}
}
return &v1alpha1.ArrayOrString{
Type: v1alpha1.ParamTypeString,
StringVal: value,
}
}

// ParamSpecDescription sets the description of a ParamSpec.
func ParamSpecDescription(desc string) ParamSpecOp {
return func(ps *v1alpha1.ParamSpec) {
Expand All @@ -43,7 +30,7 @@ func ParamSpecDescription(desc string) ParamSpecOp {

// ParamSpecDefault sets the default value of a ParamSpec.
func ParamSpecDefault(value string, additionalValues ...string) ParamSpecOp {
arrayOrString := arrayOrString(value, additionalValues...)
arrayOrString := v1beta1.NewArrayOrString(value, additionalValues...)
return func(ps *v1alpha1.ParamSpec) {
ps.Default = arrayOrString
}
Expand Down
8 changes: 3 additions & 5 deletions internal/builder/v1alpha1/pipeline.go
Original file line number Diff line number Diff line change
Expand Up @@ -213,11 +213,10 @@ func PipelineTaskRefKind(kind v1alpha1.TaskKind) PipelineTaskOp {

// PipelineTaskParam adds a ResourceParam, with specified name and value, to the PipelineTask.
func PipelineTaskParam(name string, value string, additionalValues ...string) PipelineTaskOp {
arrayOrString := arrayOrString(value, additionalValues...)
return func(pt *v1alpha1.PipelineTask) {
pt.Params = append(pt.Params, v1alpha1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down Expand Up @@ -287,7 +286,7 @@ func PipelineTaskConditionParam(name, val string) PipelineTaskConditionOp {
}
condition.Params = append(condition.Params, v1alpha1.Param{
Name: name,
Value: *arrayOrString(val),
Value: *v1beta1.NewArrayOrString(val),
})
}
}
Expand Down Expand Up @@ -436,11 +435,10 @@ func PipelineRunServiceAccountNameTask(taskName, sa string) PipelineRunSpecOp {

// PipelineRunParam add a param, with specified name and value, to the PipelineRunSpec.
func PipelineRunParam(name string, value string, additionalValues ...string) PipelineRunSpecOp {
arrayOrString := arrayOrString(value, additionalValues...)
return func(prs *v1alpha1.PipelineRunSpec) {
prs.Params = append(prs.Params, v1alpha1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down
6 changes: 2 additions & 4 deletions internal/builder/v1alpha1/task.go
Original file line number Diff line number Diff line change
Expand Up @@ -757,11 +757,10 @@ func TaskRunServiceAccountName(sa string) TaskRunSpecOp {

// TaskRunParam sets the Params to the TaskSpec
func TaskRunParam(name, value string, additionalValues ...string) TaskRunSpecOp {
arrayOrString := arrayOrString(value, additionalValues...)
return func(spec *v1alpha1.TaskRunSpec) {
spec.Params = append(spec.Params, v1alpha1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down Expand Up @@ -822,11 +821,10 @@ func TaskRunInputs(ops ...TaskRunInputsOp) TaskRunSpecOp {

// TaskRunInputsParam add a param, with specified name and value, to the TaskRunInputs.
func TaskRunInputsParam(name, value string, additionalValues ...string) TaskRunInputsOp {
arrayOrString := arrayOrString(value, additionalValues...)
return func(i *v1alpha1.TaskRunInputs) {
i.Params = append(i.Params, v1alpha1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down
19 changes: 1 addition & 18 deletions internal/builder/v1beta1/param.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,22 +18,6 @@ import "github.com/tektoncd/pipeline/pkg/apis/pipeline/v1beta1"
// ParamSpecOp is an operation which modify a ParamSpec struct.
type ParamSpecOp func(*v1beta1.ParamSpec)

// ArrayOrString creates an ArrayOrString of type ParamTypeString or ParamTypeArray, based on
// how many inputs are given (>1 input will create an array, not string).
func ArrayOrString(value string, additionalValues ...string) *v1beta1.ArrayOrString {
if len(additionalValues) > 0 {
additionalValues = append([]string{value}, additionalValues...)
return &v1beta1.ArrayOrString{
Type: v1beta1.ParamTypeArray,
ArrayVal: additionalValues,
}
}
return &v1beta1.ArrayOrString{
Type: v1beta1.ParamTypeString,
StringVal: value,
}
}

// ParamSpecDescription sets the description of a ParamSpec.
func ParamSpecDescription(desc string) ParamSpecOp {
return func(ps *v1beta1.ParamSpec) {
Expand All @@ -43,8 +27,7 @@ func ParamSpecDescription(desc string) ParamSpecOp {

// ParamSpecDefault sets the default value of a ParamSpec.
func ParamSpecDefault(value string, additionalValues ...string) ParamSpecOp {
arrayOrString := ArrayOrString(value, additionalValues...)
return func(ps *v1beta1.ParamSpec) {
ps.Default = arrayOrString
ps.Default = v1beta1.NewArrayOrString(value, additionalValues...)
}
}
44 changes: 0 additions & 44 deletions internal/builder/v1beta1/param_test.go

This file was deleted.

8 changes: 3 additions & 5 deletions internal/builder/v1beta1/pipeline.go
Original file line number Diff line number Diff line change
Expand Up @@ -240,11 +240,10 @@ func PipelineTaskRefKind(kind v1beta1.TaskKind) PipelineTaskOp {

// PipelineTaskParam adds a ResourceParam, with specified name and value, to the PipelineTask.
func PipelineTaskParam(name string, value string, additionalValues ...string) PipelineTaskOp {
arrayOrString := ArrayOrString(value, additionalValues...)
return func(pt *v1beta1.PipelineTask) {
pt.Params = append(pt.Params, v1beta1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down Expand Up @@ -314,7 +313,7 @@ func PipelineTaskConditionParam(name, val string) PipelineTaskConditionOp {
}
condition.Params = append(condition.Params, v1beta1.Param{
Name: name,
Value: *ArrayOrString(val),
Value: *v1beta1.NewArrayOrString(val),
})
}
}
Expand Down Expand Up @@ -489,11 +488,10 @@ func PipelineTaskRunSpecs(taskRunSpecs []v1beta1.PipelineTaskRunSpec) PipelineRu

// PipelineRunParam add a param, with specified name and value, to the PipelineRunSpec.
func PipelineRunParam(name string, value string, additionalValues ...string) PipelineRunSpecOp {
arrayOrString := ArrayOrString(value, additionalValues...)
return func(prs *v1beta1.PipelineRunSpec) {
prs.Params = append(prs.Params, v1beta1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down
25 changes: 12 additions & 13 deletions internal/builder/v1beta1/pipeline_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,14 @@ import (
"time"

"github.com/google/go-cmp/cmp"
tb "github.com/tektoncd/pipeline/internal/builder/v1beta1"
"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1beta1"
resource "github.com/tektoncd/pipeline/pkg/apis/resource/v1alpha1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/selection"
"knative.dev/pkg/apis"
duckv1beta1 "knative.dev/pkg/apis/duck/v1beta1"

tb "github.com/tektoncd/pipeline/internal/builder/v1beta1"
"github.com/tektoncd/pipeline/pkg/apis/pipeline/v1beta1"
resource "github.com/tektoncd/pipeline/pkg/apis/resource/v1alpha1"
)

func TestPipeline(t *testing.T) {
Expand Down Expand Up @@ -88,18 +87,18 @@ func TestPipeline(t *testing.T) {
Params: []v1beta1.ParamSpec{{
Name: "first-param",
Type: v1beta1.ParamTypeString,
Default: tb.ArrayOrString("default-value"),
Default: v1beta1.NewArrayOrString("default-value"),
Description: "default description",
}},
Tasks: []v1beta1.PipelineTask{{
Name: "foo",
TaskRef: &v1beta1.TaskRef{Name: "banana"},
Params: []v1beta1.Param{{
Name: "stringparam",
Value: *tb.ArrayOrString("value"),
Value: *v1beta1.NewArrayOrString("value"),
}, {
Name: "arrayparam",
Value: *tb.ArrayOrString("array", "value"),
Value: *v1beta1.NewArrayOrString("array", "value"),
}},
Conditions: []v1beta1.PipelineTaskCondition{{
ConditionRef: "some-condition-ref",
Expand Down Expand Up @@ -198,10 +197,10 @@ func TestPipelineRun(t *testing.T) {
ServiceAccountNames: []v1beta1.PipelineRunSpecServiceAccountName{{TaskName: "foo", ServiceAccountName: "sa-2"}},
Params: []v1beta1.Param{{
Name: "first-param-string",
Value: *tb.ArrayOrString("first-value"),
Value: *v1beta1.NewArrayOrString("first-value"),
}, {
Name: "second-param-array",
Value: *tb.ArrayOrString("some", "array"),
Value: *v1beta1.NewArrayOrString("some", "array"),
}},
Timeout: &metav1.Duration{Duration: 1 * time.Hour},
Resources: []v1beta1.PipelineResourceBinding{{
Expand Down Expand Up @@ -265,10 +264,10 @@ func TestPipelineRunWithPodTemplate(t *testing.T) {
ServiceAccountNames: []v1beta1.PipelineRunSpecServiceAccountName{{TaskName: "foo", ServiceAccountName: "sa-2"}},
Params: []v1beta1.Param{{
Name: "first-param-string",
Value: *tb.ArrayOrString("first-value"),
Value: *v1beta1.NewArrayOrString("first-value"),
}, {
Name: "second-param-array",
Value: *tb.ArrayOrString("some", "array"),
Value: *v1beta1.NewArrayOrString("some", "array"),
}},
Timeout: &metav1.Duration{Duration: 1 * time.Hour},
Resources: []v1beta1.PipelineResourceBinding{{
Expand Down Expand Up @@ -340,10 +339,10 @@ func TestPipelineRunWithResourceSpec(t *testing.T) {
ServiceAccountNames: []v1beta1.PipelineRunSpecServiceAccountName{{TaskName: "foo", ServiceAccountName: "sa-2"}},
Params: []v1beta1.Param{{
Name: "first-param-string",
Value: *tb.ArrayOrString("first-value"),
Value: *v1beta1.NewArrayOrString("first-value"),
}, {
Name: "second-param-array",
Value: *tb.ArrayOrString("some", "array"),
Value: *v1beta1.NewArrayOrString("some", "array"),
}},
Timeout: &metav1.Duration{Duration: 1 * time.Hour},
Resources: []v1beta1.PipelineResourceBinding{{
Expand Down
3 changes: 1 addition & 2 deletions internal/builder/v1beta1/task.go
Original file line number Diff line number Diff line change
Expand Up @@ -680,11 +680,10 @@ func TaskRunServiceAccountName(sa string) TaskRunSpecOp {

// TaskRunParam sets the Params to the TaskSpec
func TaskRunParam(name, value string, additionalValues ...string) TaskRunSpecOp {
arrayOrString := ArrayOrString(value, additionalValues...)
return func(spec *v1beta1.TaskRunSpec) {
spec.Params = append(spec.Params, v1beta1.Param{
Name: name,
Value: *arrayOrString,
Value: *v1beta1.NewArrayOrString(value, additionalValues...),
})
}
}
Expand Down
8 changes: 4 additions & 4 deletions internal/builder/v1beta1/task_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -101,12 +101,12 @@ func TestTask(t *testing.T) {
Name: "param",
Type: v1beta1.ParamTypeString,
Description: "mydesc",
Default: tb.ArrayOrString("default"),
Default: v1beta1.NewArrayOrString("default"),
}, {
Name: "array-param",
Type: v1beta1.ParamTypeString,
Description: "desc",
Default: tb.ArrayOrString("array", "values"),
Default: v1beta1.NewArrayOrString("array", "values"),
}},
Resources: &v1beta1.TaskResources{
Inputs: []v1beta1.TaskResource{{
Expand Down Expand Up @@ -240,10 +240,10 @@ func TestTaskRunWithTaskRef(t *testing.T) {
Spec: v1beta1.TaskRunSpec{
Params: []v1beta1.Param{{
Name: "iparam",
Value: *tb.ArrayOrString("ivalue"),
Value: *v1beta1.NewArrayOrString("ivalue"),
}, {
Name: "arrayparam",
Value: *tb.ArrayOrString("array", "values"),
Value: *v1beta1.NewArrayOrString("array", "values"),
}},
Resources: &v1beta1.TaskRunResources{
Inputs: []v1beta1.TaskResourceBinding{{
Expand Down
2 changes: 1 addition & 1 deletion pkg/apis/pipeline/v1alpha1/pipeline_conversion_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ func TestPipelineConversion_Success(t *testing.T) {
},
Params: []Param{{
Name: "param1",
Value: v1beta1.ArrayOrString{StringVal: "str", Type: v1beta1.ParamTypeString},
Value: *v1beta1.NewArrayOrString("str"),
}},
Workspaces: []WorkspacePipelineTaskBinding{{
Name: "w1",
Expand Down
4 changes: 2 additions & 2 deletions pkg/apis/pipeline/v1alpha1/pipelinerun_conversion_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ func TestPipelineRunConversion(t *testing.T) {
}},
Params: []Param{{
Name: "p1",
Value: v1beta1.ArrayOrString{StringVal: "baz"},
Value: *v1beta1.NewArrayOrString("baz"),
}},
Resources: []PipelineResourceBinding{{
Name: "i1",
Expand Down Expand Up @@ -136,7 +136,7 @@ func TestPipelineRunConversion(t *testing.T) {
}},
Params: []Param{{
Name: "p1",
Value: v1beta1.ArrayOrString{StringVal: "baz"},
Value: *v1beta1.NewArrayOrString("baz"),
}},
Resources: []PipelineResourceBinding{{
Name: "i1",
Expand Down
Loading

0 comments on commit f97f6b5

Please sign in to comment.