@@ -20,6 +20,8 @@ import (
20
20
"context"
21
21
"fmt"
22
22
23
+ metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
24
+
23
25
v1 "github.com/tektoncd/pipeline/pkg/apis/pipeline/v1"
24
26
"knative.dev/pkg/apis"
25
27
)
@@ -34,20 +36,20 @@ func (p *Pipeline) ConvertTo(ctx context.Context, to apis.Convertible) error {
34
36
switch sink := to .(type ) {
35
37
case * v1.Pipeline :
36
38
sink .ObjectMeta = p .ObjectMeta
37
- return p .Spec .ConvertTo (ctx , & sink .Spec )
39
+ return p .Spec .ConvertTo (ctx , & sink .Spec , & sink . ObjectMeta )
38
40
default :
39
41
return fmt .Errorf ("unknown version, got: %T" , sink )
40
42
}
41
43
}
42
44
43
45
// ConvertTo implements apis.Convertible
44
- func (ps * PipelineSpec ) ConvertTo (ctx context.Context , sink * v1.PipelineSpec ) error {
46
+ func (ps * PipelineSpec ) ConvertTo (ctx context.Context , sink * v1.PipelineSpec , meta * metav1. ObjectMeta ) error {
45
47
sink .DisplayName = ps .DisplayName
46
48
sink .Description = ps .Description
47
49
sink .Tasks = nil
48
50
for _ , t := range ps .Tasks {
49
51
new := v1.PipelineTask {}
50
- err := t .convertTo (ctx , & new )
52
+ err := t .convertTo (ctx , & new , meta )
51
53
if err != nil {
52
54
return err
53
55
}
@@ -74,7 +76,7 @@ func (ps *PipelineSpec) ConvertTo(ctx context.Context, sink *v1.PipelineSpec) er
74
76
sink .Finally = nil
75
77
for _ , f := range ps .Finally {
76
78
new := v1.PipelineTask {}
77
- err := f .convertTo (ctx , & new )
79
+ err := f .convertTo (ctx , & new , meta )
78
80
if err != nil {
79
81
return err
80
82
}
@@ -88,20 +90,20 @@ func (p *Pipeline) ConvertFrom(ctx context.Context, from apis.Convertible) error
88
90
switch source := from .(type ) {
89
91
case * v1.Pipeline :
90
92
p .ObjectMeta = source .ObjectMeta
91
- return p .Spec .ConvertFrom (ctx , & source .Spec )
93
+ return p .Spec .ConvertFrom (ctx , & source .Spec , & p . ObjectMeta )
92
94
default :
93
95
return fmt .Errorf ("unknown version, got: %T" , p )
94
96
}
95
97
}
96
98
97
99
// ConvertFrom implements apis.Convertible
98
- func (ps * PipelineSpec ) ConvertFrom (ctx context.Context , source * v1.PipelineSpec ) error {
100
+ func (ps * PipelineSpec ) ConvertFrom (ctx context.Context , source * v1.PipelineSpec , meta * metav1. ObjectMeta ) error {
99
101
ps .DisplayName = source .DisplayName
100
102
ps .Description = source .Description
101
103
ps .Tasks = nil
102
104
for _ , t := range source .Tasks {
103
105
new := PipelineTask {}
104
- err := new .convertFrom (ctx , t )
106
+ err := new .convertFrom (ctx , t , meta )
105
107
if err != nil {
106
108
return err
107
109
}
@@ -128,7 +130,7 @@ func (ps *PipelineSpec) ConvertFrom(ctx context.Context, source *v1.PipelineSpec
128
130
ps .Finally = nil
129
131
for _ , f := range source .Finally {
130
132
new := PipelineTask {}
131
- err := new .convertFrom (ctx , f )
133
+ err := new .convertFrom (ctx , f , meta )
132
134
if err != nil {
133
135
return err
134
136
}
@@ -137,7 +139,7 @@ func (ps *PipelineSpec) ConvertFrom(ctx context.Context, source *v1.PipelineSpec
137
139
return nil
138
140
}
139
141
140
- func (pt PipelineTask ) convertTo (ctx context.Context , sink * v1.PipelineTask ) error {
142
+ func (pt PipelineTask ) convertTo (ctx context.Context , sink * v1.PipelineTask , meta * metav1. ObjectMeta ) error {
141
143
sink .Name = pt .Name
142
144
sink .DisplayName = pt .DisplayName
143
145
sink .Description = pt .Description
@@ -147,7 +149,7 @@ func (pt PipelineTask) convertTo(ctx context.Context, sink *v1.PipelineTask) err
147
149
}
148
150
if pt .TaskSpec != nil {
149
151
sink .TaskSpec = & v1.EmbeddedTask {}
150
- err := pt .TaskSpec .convertTo (ctx , sink .TaskSpec )
152
+ err := pt .TaskSpec .convertTo (ctx , sink .TaskSpec , meta , pt . Name )
151
153
if err != nil {
152
154
return err
153
155
}
@@ -183,7 +185,7 @@ func (pt PipelineTask) convertTo(ctx context.Context, sink *v1.PipelineTask) err
183
185
return nil
184
186
}
185
187
186
- func (pt * PipelineTask ) convertFrom (ctx context.Context , source v1.PipelineTask ) error {
188
+ func (pt * PipelineTask ) convertFrom (ctx context.Context , source v1.PipelineTask , meta * metav1. ObjectMeta ) error {
187
189
pt .Name = source .Name
188
190
pt .DisplayName = source .DisplayName
189
191
pt .Description = source .Description
@@ -194,7 +196,7 @@ func (pt *PipelineTask) convertFrom(ctx context.Context, source v1.PipelineTask)
194
196
}
195
197
if source .TaskSpec != nil {
196
198
newTaskSpec := EmbeddedTask {}
197
- err := newTaskSpec .convertFrom (ctx , * source .TaskSpec )
199
+ err := newTaskSpec .convertFrom (ctx , * source .TaskSpec , meta , pt . Name )
198
200
pt .TaskSpec = & newTaskSpec
199
201
if err != nil {
200
202
return err
@@ -231,20 +233,20 @@ func (pt *PipelineTask) convertFrom(ctx context.Context, source v1.PipelineTask)
231
233
return nil
232
234
}
233
235
234
- func (et EmbeddedTask ) convertTo (ctx context.Context , sink * v1.EmbeddedTask ) error {
236
+ func (et EmbeddedTask ) convertTo (ctx context.Context , sink * v1.EmbeddedTask , meta * metav1. ObjectMeta , taskName string ) error {
235
237
sink .TypeMeta = et .TypeMeta
236
238
sink .Spec = et .Spec
237
239
sink .Metadata = v1 .PipelineTaskMetadata (et .Metadata )
238
240
sink .TaskSpec = v1.TaskSpec {}
239
- return et .TaskSpec .ConvertTo (ctx , & sink .TaskSpec )
241
+ return et .TaskSpec .ConvertTo (ctx , & sink .TaskSpec , meta , taskName )
240
242
}
241
243
242
- func (et * EmbeddedTask ) convertFrom (ctx context.Context , source v1.EmbeddedTask ) error {
244
+ func (et * EmbeddedTask ) convertFrom (ctx context.Context , source v1.EmbeddedTask , meta * metav1. ObjectMeta , taskName string ) error {
243
245
et .TypeMeta = source .TypeMeta
244
246
et .Spec = source .Spec
245
247
et .Metadata = PipelineTaskMetadata (source .Metadata )
246
248
et .TaskSpec = TaskSpec {}
247
- return et .TaskSpec .ConvertFrom (ctx , & source .TaskSpec )
249
+ return et .TaskSpec .ConvertFrom (ctx , & source .TaskSpec , meta , taskName )
248
250
}
249
251
250
252
func (we WhenExpression ) convertTo (ctx context.Context , sink * v1.WhenExpression ) {
0 commit comments