Skip to content

Commit c19ace2

Browse files
committed
Move code to jib package
Signed-off-by: David Gageot <[email protected]>
1 parent 17fefe2 commit c19ace2

File tree

7 files changed

+69
-69
lines changed

7 files changed

+69
-69
lines changed

pkg/skaffold/build/local/jib_gradle.go

+2-15
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ func (b *Builder) buildJibGradle(ctx context.Context, out io.Writer, workspace s
3838

3939
func (b *Builder) buildJibGradleToDocker(ctx context.Context, out io.Writer, workspace string, artifact *latest.JibGradleArtifact) (string, error) {
4040
skaffoldImage := generateJibImageRef(workspace, artifact.Project)
41-
args := generateGradleArgs("jibDockerBuild", skaffoldImage, artifact)
41+
args := jib.GenerateGradleArgs("jibDockerBuild", skaffoldImage, artifact)
4242

4343
if err := runGradleCommand(ctx, out, workspace, args); err != nil {
4444
return "", err
@@ -50,7 +50,7 @@ func (b *Builder) buildJibGradleToDocker(ctx context.Context, out io.Writer, wor
5050
func (b *Builder) buildJibGradleToRegistry(ctx context.Context, out io.Writer, workspace string, artifact *latest.Artifact) (string, error) {
5151
initialTag := util.RandomID()
5252
skaffoldImage := fmt.Sprintf("%s:%s", artifact.ImageName, initialTag)
53-
args := generateGradleArgs("jib", skaffoldImage, artifact.JibGradleArtifact)
53+
args := jib.GenerateGradleArgs("jib", skaffoldImage, artifact.JibGradleArtifact)
5454

5555
if err := runGradleCommand(ctx, out, workspace, args); err != nil {
5656
return "", err
@@ -59,19 +59,6 @@ func (b *Builder) buildJibGradleToRegistry(ctx context.Context, out io.Writer, w
5959
return docker.RemoteDigest(skaffoldImage)
6060
}
6161

62-
// generateGradleArgs generates the arguments to Gradle for building the project as an image called `skaffoldImage`.
63-
func generateGradleArgs(task string, imageName string, artifact *latest.JibGradleArtifact) []string {
64-
var command string
65-
if artifact.Project == "" {
66-
command = ":" + task
67-
} else {
68-
// multi-module
69-
command = fmt.Sprintf(":%s:%s", artifact.Project, task)
70-
}
71-
72-
return []string{command, "--image=" + imageName}
73-
}
74-
7562
func runGradleCommand(ctx context.Context, out io.Writer, workspace string, args []string) error {
7663
cmd := jib.GradleCommand.CreateCommand(ctx, workspace, args)
7764
cmd.Stdout = out

pkg/skaffold/build/local/jib_maven.go

+2-20
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func (b *Builder) buildJibMavenToDocker(ctx context.Context, out io.Writer, work
4646
}
4747

4848
skaffoldImage := generateJibImageRef(workspace, artifact.Module)
49-
args := generateMavenArgs("dockerBuild", skaffoldImage, artifact)
49+
args := jib.GenerateMavenArgs("dockerBuild", skaffoldImage, artifact)
5050

5151
if err := runMavenCommand(ctx, out, workspace, args); err != nil {
5252
return "", err
@@ -65,7 +65,7 @@ func (b *Builder) buildJibMavenToRegistry(ctx context.Context, out io.Writer, wo
6565

6666
initialTag := util.RandomID()
6767
skaffoldImage := fmt.Sprintf("%s:%s", artifact.ImageName, initialTag)
68-
args := generateMavenArgs("build", skaffoldImage, artifact.JibMavenArtifact)
68+
args := jib.GenerateMavenArgs("build", skaffoldImage, artifact.JibMavenArtifact)
6969

7070
if err := runMavenCommand(ctx, out, workspace, args); err != nil {
7171
return "", err
@@ -74,24 +74,6 @@ func (b *Builder) buildJibMavenToRegistry(ctx context.Context, out io.Writer, wo
7474
return docker.RemoteDigest(skaffoldImage)
7575
}
7676

77-
// generateMavenArgs generates the arguments to Maven for building the project as an image called `skaffoldImage`.
78-
func generateMavenArgs(goal string, imageName string, artifact *latest.JibMavenArtifact) []string {
79-
var command []string
80-
if artifact.Module == "" {
81-
// single-module project
82-
command = []string{"--non-recursive", "prepare-package", "jib:" + goal}
83-
} else {
84-
// multi-module project: we assume `package` is bound to `jib:<goal>`
85-
command = []string{"--projects", artifact.Module, "--also-make", "package"}
86-
}
87-
command = append(command, "-Dimage="+imageName)
88-
if artifact.Profile != "" {
89-
command = append(command, "--activate-profiles", artifact.Profile)
90-
}
91-
92-
return command
93-
}
94-
9577
// verifyJibPackageGoal verifies that the referenced module has `package` bound to a single jib goal.
9678
// It returns `nil` if the goal is matched, and an error if there is a mismatch.
9779
func verifyJibPackageGoal(ctx context.Context, requiredGoal string, workspace string, artifact *latest.JibMavenArtifact) error {

pkg/skaffold/build/local/jib_test.go

-34
Original file line numberDiff line numberDiff line change
@@ -25,24 +25,6 @@ import (
2525
"github.com/GoogleContainerTools/skaffold/testutil"
2626
)
2727

28-
func TestGenerateMavenArgs(t *testing.T) {
29-
var testCases = []struct {
30-
in latest.JibMavenArtifact
31-
out []string
32-
}{
33-
{latest.JibMavenArtifact{}, []string{"--non-recursive", "prepare-package", "jib:goal", "-Dimage=image"}},
34-
{latest.JibMavenArtifact{Profile: "profile"}, []string{"--non-recursive", "prepare-package", "jib:goal", "-Dimage=image", "--activate-profiles", "profile"}},
35-
{latest.JibMavenArtifact{Module: "module"}, []string{"--projects", "module", "--also-make", "package", "-Dimage=image"}},
36-
{latest.JibMavenArtifact{Module: "module", Profile: "profile"}, []string{"--projects", "module", "--also-make", "package", "-Dimage=image", "--activate-profiles", "profile"}},
37-
}
38-
39-
for _, tt := range testCases {
40-
args := generateMavenArgs("goal", "image", &tt.in)
41-
42-
testutil.CheckDeepEqual(t, tt.out, args)
43-
}
44-
}
45-
4628
func TestMavenVerifyJibPackageGoal(t *testing.T) {
4729
var testCases = []struct {
4830
requiredGoal string
@@ -72,22 +54,6 @@ func TestMavenVerifyJibPackageGoal(t *testing.T) {
7254

7355
}
7456

75-
func TestGenerateGradleArgs(t *testing.T) {
76-
var testCases = []struct {
77-
in latest.JibGradleArtifact
78-
out []string
79-
}{
80-
{latest.JibGradleArtifact{}, []string{":task", "--image=image"}},
81-
{latest.JibGradleArtifact{Project: "project"}, []string{":project:task", "--image=image"}},
82-
}
83-
84-
for _, tt := range testCases {
85-
command := generateGradleArgs("task", "image", &tt.in)
86-
87-
testutil.CheckDeepEqual(t, tt.out, command)
88-
}
89-
}
90-
9157
func TestGenerateJibImageRef(t *testing.T) {
9258
var testCases = []struct {
9359
workspace string

pkg/skaffold/jib/jib_gradle.go

+13
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,16 @@ func getCommandGradle(ctx context.Context, workspace string, a *latest.JibGradle
4949
}
5050
return GradleCommand.CreateCommand(ctx, workspace, args)
5151
}
52+
53+
// GenerateGradleArgs generates the arguments to Gradle for building the project as an image.
54+
func GenerateGradleArgs(task string, imageName string, artifact *latest.JibGradleArtifact) []string {
55+
var command string
56+
if artifact.Project == "" {
57+
command = ":" + task
58+
} else {
59+
// multi-module
60+
command = fmt.Sprintf(":%s:%s", artifact.Project, task)
61+
}
62+
63+
return []string{command, "--image=" + imageName}
64+
}

pkg/skaffold/jib/jib_gradle_test.go

+16
Original file line numberDiff line numberDiff line change
@@ -143,3 +143,19 @@ func TestGetCommandGradle(t *testing.T) {
143143
})
144144
}
145145
}
146+
147+
func TestGenerateGradleArgs(t *testing.T) {
148+
var testCases = []struct {
149+
in latest.JibGradleArtifact
150+
out []string
151+
}{
152+
{latest.JibGradleArtifact{}, []string{":task", "--image=image"}},
153+
{latest.JibGradleArtifact{Project: "project"}, []string{":project:task", "--image=image"}},
154+
}
155+
156+
for _, tt := range testCases {
157+
command := GenerateGradleArgs("task", "image", &tt.in)
158+
159+
testutil.CheckDeepEqual(t, tt.out, command)
160+
}
161+
}

pkg/skaffold/jib/jib_maven.go

+18
Original file line numberDiff line numberDiff line change
@@ -55,3 +55,21 @@ func getCommandMaven(ctx context.Context, workspace string, a *latest.JibMavenAr
5555

5656
return MavenCommand.CreateCommand(ctx, workspace, args)
5757
}
58+
59+
// GenerateMavenArgs generates the arguments to Maven for building the project as an image.
60+
func GenerateMavenArgs(goal string, imageName string, artifact *latest.JibMavenArtifact) []string {
61+
var command []string
62+
if artifact.Module == "" {
63+
// single-module project
64+
command = []string{"--non-recursive", "prepare-package", "jib:" + goal}
65+
} else {
66+
// multi-module project: we assume `package` is bound to `jib:<goal>`
67+
command = []string{"--projects", artifact.Module, "--also-make", "package"}
68+
}
69+
command = append(command, "-Dimage="+imageName)
70+
if artifact.Profile != "" {
71+
command = append(command, "--activate-profiles", artifact.Profile)
72+
}
73+
74+
return command
75+
}

pkg/skaffold/jib/jib_maven_test.go

+18
Original file line numberDiff line numberDiff line change
@@ -158,3 +158,21 @@ func TestGetCommandMaven(t *testing.T) {
158158
})
159159
}
160160
}
161+
162+
func TestGenerateMavenArgs(t *testing.T) {
163+
var testCases = []struct {
164+
in latest.JibMavenArtifact
165+
out []string
166+
}{
167+
{latest.JibMavenArtifact{}, []string{"--non-recursive", "prepare-package", "jib:goal", "-Dimage=image"}},
168+
{latest.JibMavenArtifact{Profile: "profile"}, []string{"--non-recursive", "prepare-package", "jib:goal", "-Dimage=image", "--activate-profiles", "profile"}},
169+
{latest.JibMavenArtifact{Module: "module"}, []string{"--projects", "module", "--also-make", "package", "-Dimage=image"}},
170+
{latest.JibMavenArtifact{Module: "module", Profile: "profile"}, []string{"--projects", "module", "--also-make", "package", "-Dimage=image", "--activate-profiles", "profile"}},
171+
}
172+
173+
for _, tt := range testCases {
174+
args := GenerateMavenArgs("goal", "image", &tt.in)
175+
176+
testutil.CheckDeepEqual(t, tt.out, args)
177+
}
178+
}

0 commit comments

Comments
 (0)