@@ -30,41 +30,53 @@ enablePlugins(DockerPlugin, LauncherJarPlugin)
3030Universal / javaOptions ++= Seq (" -J-Xms1024m" , " -J-Xmx1024m" )
3131
3232TaskKey [Unit ](" checkDockerLayers" ) := {
33- val layers = (Docker / dockerLayerMappings).value.groupBy(_.layerId).withDefaultValue(Nil )
33+ val layerMappings = (Docker / dockerLayerMappings).value
34+ val layers = layerMappings.groupBy(_.layerId).withDefaultValue(Nil )
35+
36+ def printLayers : String = layerMappings.mkString(" \n " , " \n " , " \n " )
3437
3538 val layer10 = layers(Some (10 ))
36- assert(layer10.isEmpty, " layer 10 should be empty because jlink is not used" )
39+ assert(layer10.isEmpty, s " layer 10 should be empty because jlink is not used: $printLayers " )
3740
3841 val layer20 = layers(Some (20 ))
3942 assert(
4043 layer20.forall(_.file.getPath.startsWith(csrCacheDirectory.value.getPath)),
41- " layer 20 should only contain external libraries"
44+ s " layer 20 should only contain external libraries: $printLayers "
4245 )
4346 assert(
4447 layer20.exists(_.path == " /opt/docker/lib/org.typelevel.cats-core_2.13-2.13.0.jar" ),
45- " layer 20 should contain the common project's dependency"
48+ s " layer 20 should contain the common project's dependency: $printLayers "
4649 )
4750
4851 val layer30 = layers(Some (30 ))
49- assert(layer30.exists(_.path == " /opt/docker/conf/application.ini" ), " layer 30 should contain application.ini" )
50- assert(layer30.exists(_.path == " /opt/docker/conf/logback.xml" ), " layer 30 should contain logback.xml" )
52+ assert(
53+ layer30.exists(_.path == " /opt/docker/conf/application.ini" ),
54+ s " layer 30 should contain application.ini: $printLayers"
55+ )
56+ assert(layer30.exists(_.path == " /opt/docker/conf/logback.xml" ), s " layer 30 should contain logback.xml: $printLayers" )
5157
5258 val layer40 = layers(Some (40 ))
5359 assert(
5460 layer40.exists(_.file == (Runtime / PlayKeys .playJarSansExternalized).value),
55- " layer 40 should contain Play's -sans-externalized.jar"
61+ s " layer 40 should contain Play's -sans-externalized.jar: $printLayers "
5662 )
57- assert(layer40.exists(_.file == PlayKeys .playPackageAssets.value), " layer 40 should contain Play's -assets.jar" )
58- assert(layer40.exists(_.file == packageJavaLauncherJar.value), " layer 40 should contain launcher jar" )
63+ assert(
64+ layer40.exists(_.file == PlayKeys .playPackageAssets.value),
65+ s " layer 40 should contain Play's -assets.jar: $printLayers"
66+ )
67+ assert(layer40.exists(_.file == packageJavaLauncherJar.value), s " layer 40 should contain launcher jar: $printLayers" )
5968 assert(
6069 layer40.exists(_.file == (common / Compile / packageBin).value),
61- " layer 40 should contain the common project jar"
70+ s " layer 40 should contain the common project jar: $printLayers "
6271 )
6372 assert(
6473 layer40.exists(layer => makeBashScripts.value.map(_._1).contains(layer.file)),
65- " layer 40 should contain start scripts"
74+ s " layer 40 should contain start scripts: $printLayers "
6675 )
6776
6877 val layerFinal = layers(None )
69- assert(layerFinal.exists(_.path.startsWith(" /opt/docker/share/doc/api/" )), " final layer should contain API docs" )
78+ assert(
79+ layerFinal.exists(_.path.startsWith(" /opt/docker/share/doc/api/" )),
80+ s " final layer should contain API docs: $printLayers"
81+ )
7082}
0 commit comments