Skip to content

Commit a065ee6

Browse files
committed
build: add conversion from url values to build log options
1 parent cfc504f commit a065ee6

File tree

2 files changed

+74
-32
lines changed

2 files changed

+74
-32
lines changed

pkg/build/apis/build/internal_helpers/internal_helpers.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
package internal_helpers
22

33
import (
4+
corev1 "k8s.io/api/core/v1"
45
kapi "k8s.io/kubernetes/pkg/apis/core"
56

67
"github.com/openshift/library-go/pkg/build/naming"
8+
9+
buildv1 "github.com/openshift/api/build/v1"
710
buildapi "github.com/openshift/openshift-apiserver/pkg/build/apis/build"
811
)
912

@@ -31,6 +34,18 @@ func BuildToPodLogOptions(opts *buildapi.BuildLogOptions) *kapi.PodLogOptions {
3134
}
3235
}
3336

37+
func PodLogOptionsToBuildLogOptions(opts *corev1.PodLogOptions) buildv1.BuildLogOptions {
38+
return buildv1.BuildLogOptions{
39+
Follow: opts.Follow,
40+
SinceSeconds: opts.SinceSeconds,
41+
SinceTime: opts.SinceTime,
42+
Timestamps: opts.Timestamps,
43+
TailLines: opts.TailLines,
44+
LimitBytes: opts.LimitBytes,
45+
InsecureSkipTLSVerifyBackend: opts.InsecureSkipTLSVerifyBackend,
46+
}
47+
}
48+
3449
// DEPRECATED: Reserved for apiserver, do not use outside of it
3550
func IsBuildComplete(b *buildapi.Build) bool {
3651
return IsTerminalPhase(b.Status.Phase)

pkg/build/apis/build/v1/conversion.go

Lines changed: 59 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,18 @@ package v1
33
import (
44
"net/url"
55

6+
corev1 "k8s.io/api/core/v1"
67
"k8s.io/apimachinery/pkg/conversion"
78
"k8s.io/apimachinery/pkg/runtime"
9+
corev1conversions "k8s.io/kubernetes/pkg/apis/core/v1"
810

9-
v1 "github.com/openshift/api/build/v1"
11+
buildv1 "github.com/openshift/api/build/v1"
1012
"github.com/openshift/library-go/pkg/image/imageutil"
1113
newer "github.com/openshift/openshift-apiserver/pkg/build/apis/build"
1214
buildinternalhelpers "github.com/openshift/openshift-apiserver/pkg/build/apis/build/internal_helpers"
1315
)
1416

15-
func Convert_v1_BuildConfig_To_build_BuildConfig(in *v1.BuildConfig, out *newer.BuildConfig, s conversion.Scope) error {
17+
func Convert_v1_BuildConfig_To_build_BuildConfig(in *buildv1.BuildConfig, out *newer.BuildConfig, s conversion.Scope) error {
1618
if err := autoConvert_v1_BuildConfig_To_build_BuildConfig(in, out, s); err != nil {
1719
return err
1820
}
@@ -37,7 +39,7 @@ func Convert_v1_BuildConfig_To_build_BuildConfig(in *v1.BuildConfig, out *newer.
3739
return nil
3840
}
3941

40-
func Convert_v1_SourceBuildStrategy_To_build_SourceBuildStrategy(in *v1.SourceBuildStrategy, out *newer.SourceBuildStrategy, s conversion.Scope) error {
42+
func Convert_v1_SourceBuildStrategy_To_build_SourceBuildStrategy(in *buildv1.SourceBuildStrategy, out *newer.SourceBuildStrategy, s conversion.Scope) error {
4143
if err := autoConvert_v1_SourceBuildStrategy_To_build_SourceBuildStrategy(in, out, s); err != nil {
4244
return err
4345
}
@@ -49,7 +51,7 @@ func Convert_v1_SourceBuildStrategy_To_build_SourceBuildStrategy(in *v1.SourceBu
4951
return nil
5052
}
5153

52-
func Convert_v1_DockerBuildStrategy_To_build_DockerBuildStrategy(in *v1.DockerBuildStrategy, out *newer.DockerBuildStrategy, s conversion.Scope) error {
54+
func Convert_v1_DockerBuildStrategy_To_build_DockerBuildStrategy(in *buildv1.DockerBuildStrategy, out *newer.DockerBuildStrategy, s conversion.Scope) error {
5355
if err := autoConvert_v1_DockerBuildStrategy_To_build_DockerBuildStrategy(in, out, s); err != nil {
5456
return err
5557
}
@@ -63,7 +65,7 @@ func Convert_v1_DockerBuildStrategy_To_build_DockerBuildStrategy(in *v1.DockerBu
6365
return nil
6466
}
6567

66-
func Convert_v1_CustomBuildStrategy_To_build_CustomBuildStrategy(in *v1.CustomBuildStrategy, out *newer.CustomBuildStrategy, s conversion.Scope) error {
68+
func Convert_v1_CustomBuildStrategy_To_build_CustomBuildStrategy(in *buildv1.CustomBuildStrategy, out *newer.CustomBuildStrategy, s conversion.Scope) error {
6769
if err := autoConvert_v1_CustomBuildStrategy_To_build_CustomBuildStrategy(in, out, s); err != nil {
6870
return err
6971
}
@@ -75,7 +77,7 @@ func Convert_v1_CustomBuildStrategy_To_build_CustomBuildStrategy(in *v1.CustomBu
7577
return nil
7678
}
7779

78-
func Convert_v1_BuildOutput_To_build_BuildOutput(in *v1.BuildOutput, out *newer.BuildOutput, s conversion.Scope) error {
80+
func Convert_v1_BuildOutput_To_build_BuildOutput(in *buildv1.BuildOutput, out *newer.BuildOutput, s conversion.Scope) error {
7981
if err := autoConvert_v1_BuildOutput_To_build_BuildOutput(in, out, s); err != nil {
8082
return err
8183
}
@@ -86,73 +88,93 @@ func Convert_v1_BuildOutput_To_build_BuildOutput(in *v1.BuildOutput, out *newer.
8688
return nil
8789
}
8890

89-
func Convert_v1_BuildTriggerPolicy_To_build_BuildTriggerPolicy(in *v1.BuildTriggerPolicy, out *newer.BuildTriggerPolicy, s conversion.Scope) error {
91+
func Convert_v1_BuildTriggerPolicy_To_build_BuildTriggerPolicy(in *buildv1.BuildTriggerPolicy, out *newer.BuildTriggerPolicy, s conversion.Scope) error {
9092
if err := autoConvert_v1_BuildTriggerPolicy_To_build_BuildTriggerPolicy(in, out, s); err != nil {
9193
return err
9294
}
9395

9496
switch in.Type {
95-
case v1.ImageChangeBuildTriggerTypeDeprecated:
97+
case buildv1.ImageChangeBuildTriggerTypeDeprecated:
9698
out.Type = newer.ImageChangeBuildTriggerType
97-
case v1.GenericWebHookBuildTriggerTypeDeprecated:
99+
case buildv1.GenericWebHookBuildTriggerTypeDeprecated:
98100
out.Type = newer.GenericWebHookBuildTriggerType
99-
case v1.GitHubWebHookBuildTriggerTypeDeprecated:
101+
case buildv1.GitHubWebHookBuildTriggerTypeDeprecated:
100102
out.Type = newer.GitHubWebHookBuildTriggerType
101103
}
102104
return nil
103105
}
104106

105-
func Convert_build_SourceRevision_To_v1_SourceRevision(in *newer.SourceRevision, out *v1.SourceRevision, s conversion.Scope) error {
107+
func Convert_build_SourceRevision_To_v1_SourceRevision(in *newer.SourceRevision, out *buildv1.SourceRevision, s conversion.Scope) error {
106108
if err := autoConvert_build_SourceRevision_To_v1_SourceRevision(in, out, s); err != nil {
107109
return err
108110
}
109-
out.Type = v1.BuildSourceGit
111+
out.Type = buildv1.BuildSourceGit
110112
return nil
111113
}
112114

113-
func Convert_build_BuildSource_To_v1_BuildSource(in *newer.BuildSource, out *v1.BuildSource, s conversion.Scope) error {
115+
func Convert_build_BuildSource_To_v1_BuildSource(in *newer.BuildSource, out *buildv1.BuildSource, s conversion.Scope) error {
114116
if err := autoConvert_build_BuildSource_To_v1_BuildSource(in, out, s); err != nil {
115117
return err
116118
}
117119
switch {
118-
// It is legal for a buildsource to have both a git+dockerfile source, but in v1 that was represented
120+
// It is legal for a buildsource to have both a git+dockerfile source, but in buildv1 that was represented
119121
// as type git.
120122
case in.Git != nil:
121-
out.Type = v1.BuildSourceGit
122-
// It is legal for a buildsource to have both a binary+dockerfile source, but in v1 that was represented
123+
out.Type = buildv1.BuildSourceGit
124+
// It is legal for a buildsource to have both a binary+dockerfile source, but in buildv1 that was represented
123125
// as type binary.
124126
case in.Binary != nil:
125-
out.Type = v1.BuildSourceBinary
127+
out.Type = buildv1.BuildSourceBinary
126128
case in.Dockerfile != nil:
127-
out.Type = v1.BuildSourceDockerfile
129+
out.Type = buildv1.BuildSourceDockerfile
128130
case len(in.Images) > 0:
129-
out.Type = v1.BuildSourceImage
131+
out.Type = buildv1.BuildSourceImage
130132
default:
131-
out.Type = v1.BuildSourceNone
133+
out.Type = buildv1.BuildSourceNone
132134
}
133135
return nil
134136
}
135137

136-
func Convert_build_BuildStrategy_To_v1_BuildStrategy(in *newer.BuildStrategy, out *v1.BuildStrategy, s conversion.Scope) error {
138+
func Convert_build_BuildStrategy_To_v1_BuildStrategy(in *newer.BuildStrategy, out *buildv1.BuildStrategy, s conversion.Scope) error {
137139
if err := autoConvert_build_BuildStrategy_To_v1_BuildStrategy(in, out, s); err != nil {
138140
return err
139141
}
140142
switch {
141143
case in.SourceStrategy != nil:
142-
out.Type = v1.SourceBuildStrategyType
144+
out.Type = buildv1.SourceBuildStrategyType
143145
case in.DockerStrategy != nil:
144-
out.Type = v1.DockerBuildStrategyType
146+
out.Type = buildv1.DockerBuildStrategyType
145147
case in.CustomStrategy != nil:
146-
out.Type = v1.CustomBuildStrategyType
148+
out.Type = buildv1.CustomBuildStrategyType
147149
case in.JenkinsPipelineStrategy != nil:
148-
out.Type = v1.JenkinsPipelineBuildStrategyType
150+
out.Type = buildv1.JenkinsPipelineBuildStrategyType
149151
default:
150152
out.Type = ""
151153
}
152154
return nil
153155
}
154156

155-
func Convert_url_Values_To_v1_BinaryBuildRequestOptions(in *url.Values, out *v1.BinaryBuildRequestOptions, s conversion.Scope) error {
157+
func Convert_url_Values_To_v1_BuildLogOptions(in *url.Values, out *buildv1.BuildLogOptions, s conversion.Scope) error {
158+
if in == nil || out == nil {
159+
return nil
160+
}
161+
var podLogOptions *corev1.PodLogOptions
162+
if err := corev1conversions.Convert_url_Values_To_v1_PodLogOptions(in, podLogOptions, nil); err != nil {
163+
return err
164+
}
165+
*out = buildinternalhelpers.PodLogOptionsToBuildLogOptions(podLogOptions)
166+
return nil
167+
}
168+
169+
// TODO: Is this needed?
170+
func Convert_v1_BuildLogOptions_To_url_Values(in *buildv1.BuildLogOptions, out *url.Values, s conversion.Scope) error {
171+
if in == nil || out == nil {
172+
return nil
173+
}
174+
return nil
175+
}
176+
177+
func Convert_url_Values_To_v1_BinaryBuildRequestOptions(in *url.Values, out *buildv1.BinaryBuildRequestOptions, s conversion.Scope) error {
156178
if in == nil || out == nil {
157179
return nil
158180
}
@@ -166,7 +188,7 @@ func Convert_url_Values_To_v1_BinaryBuildRequestOptions(in *url.Values, out *v1.
166188
return nil
167189
}
168190

169-
func Convert_v1_BinaryBuildRequestOptions_To_url_Values(in *v1.BinaryBuildRequestOptions, out *url.Values, s conversion.Scope) error {
191+
func Convert_v1_BinaryBuildRequestOptions_To_url_Values(in *buildv1.BinaryBuildRequestOptions, out *url.Values, s conversion.Scope) error {
170192
if in == nil || out == nil {
171193
return nil
172194
}
@@ -183,21 +205,26 @@ func Convert_v1_BinaryBuildRequestOptions_To_url_Values(in *v1.BinaryBuildReques
183205
// AddCustomConversionFuncs adds conversion functions which cannot be automatically generated.
184206
// This is typically due to the objects not having 1:1 field mappings.
185207
func AddCustomConversionFuncs(scheme *runtime.Scheme) error {
186-
if err := scheme.AddConversionFunc((*url.Values)(nil), (*v1.BinaryBuildRequestOptions)(nil), func(a, b interface{}, scope conversion.Scope) error {
187-
return Convert_url_Values_To_v1_BinaryBuildRequestOptions(a.(*url.Values), b.(*v1.BinaryBuildRequestOptions), scope)
208+
if err := scheme.AddConversionFunc((*url.Values)(nil), (*buildv1.BinaryBuildRequestOptions)(nil), func(a, b interface{}, scope conversion.Scope) error {
209+
return Convert_url_Values_To_v1_BinaryBuildRequestOptions(a.(*url.Values), b.(*buildv1.BinaryBuildRequestOptions), scope)
210+
}); err != nil {
211+
return err
212+
}
213+
if err := scheme.AddConversionFunc((*buildv1.BinaryBuildRequestOptions)(nil), (*url.Values)(nil), func(a, b interface{}, scope conversion.Scope) error {
214+
return Convert_v1_BinaryBuildRequestOptions_To_url_Values(a.(*buildv1.BinaryBuildRequestOptions), b.(*url.Values), scope)
188215
}); err != nil {
189216
return err
190217
}
191-
if err := scheme.AddConversionFunc((*v1.BinaryBuildRequestOptions)(nil), (*url.Values)(nil), func(a, b interface{}, scope conversion.Scope) error {
192-
return Convert_v1_BinaryBuildRequestOptions_To_url_Values(a.(*v1.BinaryBuildRequestOptions), b.(*url.Values), scope)
218+
if err := scheme.AddConversionFunc((*buildv1.BuildLogOptions)(nil), (*url.Values)(nil), func(a, b interface{}, scope conversion.Scope) error {
219+
return Convert_url_Values_To_v1_BuildLogOptions(a.(*url.Values), b.(*buildv1.BuildLogOptions), scope)
193220
}); err != nil {
194221
return err
195222
}
196223
return nil
197224
}
198225

199226
func AddFieldSelectorKeyConversions(scheme *runtime.Scheme) error {
200-
return scheme.AddFieldLabelConversionFunc(v1.GroupVersion.WithKind("Build"), buildFieldSelectorKeyConversionFunc)
227+
return scheme.AddFieldLabelConversionFunc(buildv1.GroupVersion.WithKind("Build"), buildFieldSelectorKeyConversionFunc)
201228
}
202229

203230
func buildFieldSelectorKeyConversionFunc(label, value string) (internalLabel, internalValue string, err error) {

0 commit comments

Comments
 (0)