@@ -47,27 +47,31 @@ public class BuildImageTests extends AbstractArchiveIntegrationTests {
47
47
48
48
@ TestTemplate
49
49
void whenBuildImageIsInvokedWithoutRepackageTheArchiveIsRepackagedOnTheFly (MavenBuild mavenBuild ) {
50
- mavenBuild .project ("build-image" ).goals ("package" ).prepare (this ::writeLongNameResource ).execute ((project ) -> {
51
- File jar = new File (project , "target/build-image-0.0.1.BUILD-SNAPSHOT.jar" );
52
- assertThat (jar ).isFile ();
53
- File original = new File (project , "target/build-image-0.0.1.BUILD-SNAPSHOT.jar.original" );
54
- assertThat (original ).doesNotExist ();
55
- assertThat (buildLog (project )).contains ("Building image" ).contains ("paketobuildpacks/builder" )
56
- .contains ("docker.io/library/build-image:0.0.1.BUILD-SNAPSHOT" )
57
- .contains ("Successfully built image" );
58
- ImageReference imageReference = ImageReference .of (ImageName .of ("build-image" ), "0.0.1.BUILD-SNAPSHOT" );
59
- try (GenericContainer <?> container = new GenericContainer <>(imageReference .toString ())) {
60
- container .waitingFor (Wait .forLogMessage ("Launched\\ n" , 1 )).start ();
61
- }
62
- finally {
63
- removeImage (imageReference );
64
- }
65
- });
50
+ mavenBuild .project ("build-image" ).goals ("package" )
51
+ .systemProperty ("spring-boot.build-image.pullPolicy" , "IF_NOT_PRESENT" )
52
+ .prepare (this ::writeLongNameResource ).execute ((project ) -> {
53
+ File jar = new File (project , "target/build-image-0.0.1.BUILD-SNAPSHOT.jar" );
54
+ assertThat (jar ).isFile ();
55
+ File original = new File (project , "target/build-image-0.0.1.BUILD-SNAPSHOT.jar.original" );
56
+ assertThat (original ).doesNotExist ();
57
+ assertThat (buildLog (project )).contains ("Building image" )
58
+ .contains ("docker.io/library/build-image:0.0.1.BUILD-SNAPSHOT" )
59
+ .contains ("Successfully built image" );
60
+ ImageReference imageReference = ImageReference .of (ImageName .of ("build-image" ),
61
+ "0.0.1.BUILD-SNAPSHOT" );
62
+ try (GenericContainer <?> container = new GenericContainer <>(imageReference .toString ())) {
63
+ container .waitingFor (Wait .forLogMessage ("Launched\\ n" , 1 )).start ();
64
+ }
65
+ finally {
66
+ removeImage (imageReference );
67
+ }
68
+ });
66
69
}
67
70
68
71
@ TestTemplate
69
72
void whenBuildImageIsInvokedWithCustomImageName (MavenBuild mavenBuild ) {
70
73
mavenBuild .project ("build-image-custom-name" ).goals ("package" )
74
+ .systemProperty ("spring-boot.build-image.pullPolicy" , "IF_NOT_PRESENT" )
71
75
.systemProperty ("spring-boot.build-image.imageName" , "example.com/test/property-ignored:pom-preferred" )
72
76
.execute ((project ) -> {
73
77
File jar = new File (project , "target/build-image-custom-name-0.0.1.BUILD-SNAPSHOT.jar" );
@@ -92,13 +96,13 @@ void whenBuildImageIsInvokedWithCustomImageName(MavenBuild mavenBuild) {
92
96
@ TestTemplate
93
97
void whenBuildImageIsInvokedWithCommandLineParameters (MavenBuild mavenBuild ) {
94
98
mavenBuild .project ("build-image" ).goals ("package" )
99
+ .systemProperty ("spring-boot.build-image.pullPolicy" , "IF_NOT_PRESENT" )
95
100
.systemProperty ("spring-boot.build-image.imageName" , "example.com/test/cmd-property-name:v1" )
96
101
.systemProperty ("spring-boot.build-image.builder" , "paketobuildpacks/builder:full" )
97
102
.systemProperty ("spring-boot.build-image.runImage" , "paketobuildpacks/run:full-cnb" )
98
103
.execute ((project ) -> {
99
104
assertThat (buildLog (project )).contains ("Building image" )
100
- .contains ("example.com/test/cmd-property-name:v1" ).contains ("paketobuildpacks/builder:full" )
101
- .contains ("paketobuildpacks/run:full" ).contains ("Successfully built image" );
105
+ .contains ("example.com/test/cmd-property-name:v1" ).contains ("Successfully built image" );
102
106
ImageReference imageReference = ImageReference .of ("example.com/test/cmd-property-name:v1" );
103
107
try (GenericContainer <?> container = new GenericContainer <>(imageReference .toString ())) {
104
108
container .waitingFor (Wait .forLogMessage ("Launched\\ n" , 1 )).start ();
@@ -111,27 +115,28 @@ void whenBuildImageIsInvokedWithCommandLineParameters(MavenBuild mavenBuild) {
111
115
112
116
@ TestTemplate
113
117
void whenBuildImageIsInvokedWithCustomBuilderImageAndRunImage (MavenBuild mavenBuild ) {
114
- mavenBuild .project ("build-image-custom-builder" ).goals ("package" ). execute (( project ) -> {
115
- assertThat ( buildLog ( project )). contains ( "Building image" ). contains ( "paketobuildpacks/builder:full" )
116
- .contains ("paketobuildpacks/run:full " )
117
- .contains ("docker.io/library/build-image-v2-builder:0.0.1.BUILD-SNAPSHOT" )
118
- .contains ("Successfully built image" );
119
- ImageReference imageReference = ImageReference
120
- .of ("docker.io/library/build-image-v2-builder:0.0.1.BUILD-SNAPSHOT" );
121
- try (GenericContainer <?> container = new GenericContainer <>(imageReference .toString ())) {
122
- container .waitingFor (Wait .forLogMessage ("Launched\\ n" , 1 )).start ();
123
- }
124
- finally {
125
- removeImage (imageReference );
126
- }
127
- });
118
+ mavenBuild .project ("build-image-custom-builder" ).goals ("package" )
119
+ . systemProperty ( "spring-boot.build- image.pullPolicy" , "IF_NOT_PRESENT" ). execute (( project ) -> {
120
+ assertThat ( buildLog ( project )) .contains ("Building image " )
121
+ .contains ("docker.io/library/build-image-v2-builder:0.0.1.BUILD-SNAPSHOT" )
122
+ .contains ("Successfully built image" );
123
+ ImageReference imageReference = ImageReference
124
+ .of ("docker.io/library/build-image-v2-builder:0.0.1.BUILD-SNAPSHOT" );
125
+ try (GenericContainer <?> container = new GenericContainer <>(imageReference .toString ())) {
126
+ container .waitingFor (Wait .forLogMessage ("Launched\\ n" , 1 )).start ();
127
+ }
128
+ finally {
129
+ removeImage (imageReference );
130
+ }
131
+ });
128
132
}
129
133
130
134
@ TestTemplate
131
135
void whenBuildImageIsInvokedWithEmptyEnvEntry (MavenBuild mavenBuild ) {
132
- mavenBuild .project ("build-image-empty-env-entry" ).goals ("package" ).prepare (this ::writeLongNameResource )
133
- .execute ((project ) -> {
134
- assertThat (buildLog (project )).contains ("Building image" ).contains ("paketobuildpacks/builder" )
136
+ mavenBuild .project ("build-image-empty-env-entry" ).goals ("package" )
137
+ .systemProperty ("spring-boot.build-image.pullPolicy" , "IF_NOT_PRESENT" )
138
+ .prepare (this ::writeLongNameResource ).execute ((project ) -> {
139
+ assertThat (buildLog (project )).contains ("Building image" )
135
140
.contains ("docker.io/library/build-image-empty-env-entry:0.0.1.BUILD-SNAPSHOT" )
136
141
.contains ("Successfully built image" );
137
142
ImageReference imageReference = ImageReference .of (ImageName .of ("build-image-empty-env-entry" ),
@@ -154,6 +159,7 @@ void failsWhenPublishWithoutPublishRegistryConfigured(MavenBuild mavenBuild) {
154
159
@ TestTemplate
155
160
void failsWhenBuilderFails (MavenBuild mavenBuild ) {
156
161
mavenBuild .project ("build-image-builder-error" ).goals ("package" )
162
+ .systemProperty ("spring-boot.build-image.pullPolicy" , "IF_NOT_PRESENT" )
157
163
.executeAndFail ((project ) -> assertThat (buildLog (project )).contains ("Building image" )
158
164
.containsPattern ("Builder lifecycle '.*' failed with status code" ));
159
165
}
0 commit comments