1+ import org.elasticsearch.gradle.Architecture
12import org.elasticsearch.gradle.LoggedExec
23import org.elasticsearch.gradle.VersionProperties
34import org.elasticsearch.gradle.internal.DockerBase
@@ -9,7 +10,6 @@ import org.elasticsearch.gradle.internal.docker.ShellRetry
910import org.elasticsearch.gradle.internal.docker.TransformLog4jConfigFilter
1011import org.elasticsearch.gradle.internal.docker.*
1112import org.elasticsearch.gradle.util.GradleUtils
12- import org.elasticsearch.gradle.Architecture
1313import java.nio.file.Path
1414import java.time.temporal.ChronoUnit
1515
@@ -99,9 +99,9 @@ String tiniArch = Architecture.current() == Architecture.AARCH64 ? 'arm64' : 'am
9999
100100dependencies {
101101 aarch64DockerSource project(" :distribution:archives:linux-aarch64-tar" )
102- aarch64DockerSourceTar project(path : " :distribution:archives:linux-aarch64-tar" , configuration : " default" )
102+ aarch64DockerSourceTar project(path : " :distribution:archives:linux-aarch64-tar" , configuration :" default" )
103103 dockerSource project(" :distribution:archives:linux-tar" )
104- dockerSourceTar project(path : " :distribution:archives:linux-tar" , configuration : " default" )
104+ dockerSourceTar project(path : " :distribution:archives:linux-tar" , configuration :" default" )
105105 log4jConfig project(path : " :distribution" , configuration : ' log4jConfig' )
106106 tini " krallin:tini:0.19.0:${ tiniArch} "
107107 allPlugins project(path : ' :plugins' , configuration : ' allPlugins' )
@@ -112,7 +112,7 @@ dependencies {
112112}
113113
114114ext. expansions = { Architecture architecture , DockerBase base ->
115- def (major, minor) = VersionProperties . elasticsearch. split(" \\ ." )
115+ def (major,minor) = VersionProperties . elasticsearch. split(" \\ ." )
116116
117117 // We tag our Docker images with various pieces of information, including a timestamp
118118 // for when the image was built. However, this makes it impossible completely cache
@@ -216,8 +216,7 @@ elasticsearch_distributions {
216216}
217217
218218interface Injected {
219- @Inject
220- FileSystemOperations getFs ()
219+ @Inject FileSystemOperations getFs ()
221220}
222221
223222tasks. named(" preProcessFixture" ). configure {
@@ -327,9 +326,9 @@ void addTransformDockerContextTask(Architecture architecture, DockerBase base) {
327326 into " ${ project.buildDir} /docker-context/${ archiveName} "
328327
329328 // Since we replaced the remote URL in the Dockerfile, copy in the required file
330- if (base == DockerBase . IRON_BANK ) {
329+ if (base == DockerBase . IRON_BANK ) {
331330 from(architecture == Architecture . AARCH64 ? configurations. aarch64DockerSourceTar : configurations. dockerSourceTar)
332- from(configurations. tini) {
331+ from (configurations. tini) {
333332 rename { _ -> ' tini' }
334333 }
335334 } else {
@@ -339,10 +338,7 @@ void addTransformDockerContextTask(Architecture architecture, DockerBase base) {
339338 expansions(architecture, base). findAll { it. key != ' build_date' }. each { k , v ->
340339 inputs. property(k, { v. toString() })
341340 }
342- Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(
343- project. gradle. sharedServices,
344- DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME
345- )
341+ Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(project. gradle. sharedServices, DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME )
346342 onlyIf(" $architecture supported" ) { serviceProvider. get(). isArchitectureSupported(architecture) }
347343 }
348344
@@ -366,7 +362,7 @@ private static List<String> generateTags(DockerBase base, Architecture architect
366362 String image = " elasticsearch${ base.suffix} "
367363
368364 String namespace = ' elasticsearch'
369- if (base == base == DockerBase . CLOUD_ESS ) {
365+ if (base == DockerBase . CLOUD_ESS ) {
370366 namespace + = ' -ci'
371367 }
372368
@@ -416,10 +412,7 @@ void addBuildDockerImageTask(Architecture architecture, DockerBase base) {
416412 baseImages = [base. image]
417413 }
418414
419- Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(
420- project. gradle. sharedServices,
421- DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME
422- )
415+ Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(project. gradle. sharedServices, DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME )
423416 onlyIf(" $architecture supported" ) { serviceProvider. get(). isArchitectureSupported(architecture) }
424417
425418 }
@@ -432,12 +425,12 @@ void addBuildDockerImageTask(Architecture architecture, DockerBase base) {
432425}
433426
434427void addBuildEssDockerImageTask (Architecture architecture ) {
435- DockerBase dockerBase = DockerBase . CLOUD_ESS
428+ DockerBase base = DockerBase . CLOUD_ESS
436429 String arch = architecture == Architecture . AARCH64 ? ' -aarch64' : ' '
437- String contextDir = " ${ project.buildDir} /docker-context/elasticsearch${ dockerBase .suffix} -${ VersionProperties.elasticsearch} -docker-build-context${ arch} "
430+ String contextDir = " ${ project.buildDir} /docker-context/elasticsearch${ base .suffix} -${ VersionProperties.elasticsearch} -docker-build-context${ arch} "
438431
439432 final TaskProvider<Sync > buildContextTask =
440- tasks. register(taskName(' build' , architecture, dockerBase , ' DockerContext' ), Sync ) {
433+ tasks. register(taskName(' build' , architecture, base , ' DockerContext' ), Sync ) {
441434 into contextDir
442435
443436 final Path projectDir = project. projectDir. toPath()
@@ -446,52 +439,28 @@ void addBuildEssDockerImageTask(Architecture architecture) {
446439 from configurations. allPlugins
447440 }
448441
449- // If we're performing a release build, but `build.id` hasn't been set, we can
450- // infer that we're not at the Docker building stage of the build, and therefore
451- // we should skip the beats part of the build.
452- String buildId = providers. systemProperty(' build.id' ). getOrNull()
453- boolean includeBeats = VersionProperties . isElasticsearchSnapshot() == true || buildId != null || useDra
454-
455- if (includeBeats) {
456- from configurations. getByName(" filebeat_${ architecture.classifier} " )
457- from configurations. getByName(" metricbeat_${ architecture.classifier} " )
458- }
459- // For some reason, the artifact name can differ depending on what repository we used.
460- rename ~/ ((?:file|metric)beat)-.*\. tar\. gz$/ , " \$ 1-${ VersionProperties.elasticsearch} .tar.gz"
461-
462- String baseSuffix = DockerBase . WOLFI . suffix
463- from(projectDir. resolve(" src/docker/Dockerfile.ess" )) {
464- expand(
465- [
466- base_image : " elasticsearch${ baseSuffix} :${ architecture.classifier} " ,
467- docker_base : " ${ dockerBase.name().toLowerCase()} " ,
468- version : " ${ VersionProperties.elasticsearch} " ,
469- retry : ShellRetry
470- ]
471- )
442+ from(projectDir. resolve(" src/docker/Dockerfile.cloud-ess" )) {
443+ expand([
444+ base_image : " elasticsearch${ DockerBase.CLOUD.suffix} :${ architecture.classifier} "
445+ ])
472446 filter SquashNewlinesFilter
473- rename ~/ Dockerfile\. ess$/ , ' Dockerfile'
447+ rename ~/ Dockerfile\. cloud- ess$/ , ' Dockerfile'
474448 }
475449 }
476450
477451 final TaskProvider<DockerBuildTask > buildDockerImageTask =
478- tasks. register(taskName(" build" , architecture, dockerBase, " DockerImage" ), DockerBuildTask ) {
479-
480- DockerBase base = DockerBase . WOLFI
452+ tasks. register(taskName(" build" , architecture, base, " DockerImage" ), DockerBuildTask ) {
481453
482- TaskProvider<DockerBuildTask > buildBaseTask = tasks. named(taskName(" build" , architecture, base , " DockerImage" ))
483- inputs. files(buildBaseTask )
454+ TaskProvider<DockerBuildTask > buildCloudTask = tasks. named(taskName(" build" , architecture, DockerBase . CLOUD , " DockerImage" ))
455+ inputs. files(buildCloudTask )
484456
485457 dockerContext. fileProvider(buildContextTask. map { it. getDestinationDir() })
486458
487459 noCache = buildParams. isCi()
488460 baseImages = []
489- tags = generateTags(dockerBase , architecture)
461+ tags = generateTags(base , architecture)
490462 platforms. add(architecture. dockerPlatform)
491- Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(
492- project. gradle. sharedServices,
493- DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME
494- )
463+ Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(project. gradle. sharedServices, DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME )
495464 onlyIf(" $architecture supported" ) { serviceProvider. get(). isArchitectureSupported(architecture) }
496465
497466 }
@@ -542,7 +511,7 @@ subprojects { Project subProject ->
542511 (base == DockerBase . IRON_BANK ? ' ironbank.tar' :
543512 (base == DockerBase . CLOUD_ESS ? ' cloud-ess.tar' :
544513 (base == DockerBase . WOLFI ? ' wolfi.tar' :
545- ' docker.tar' )))
514+ ' docker.tar' )))
546515 final String artifactName = " elasticsearch${ arch}${ base.suffix} _test"
547516
548517 final String exportTaskName = taskName(" export" , architecture, base, ' DockerImage' )
@@ -558,10 +527,7 @@ subprojects { Project subProject ->
558527 tarFile,
559528 " elasticsearch${ base.suffix} :${ architecture.classifier} "
560529 dependsOn(parent. path + " :" + buildTaskName)
561- Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(
562- project. gradle. sharedServices,
563- DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME
564- )
530+ Provider<DockerSupportService > serviceProvider = GradleUtils . getBuildService(project. gradle. sharedServices, DockerSupportPlugin . DOCKER_SUPPORT_SERVICE_NAME )
565531 onlyIf(" $architecture supported" ) { serviceProvider. get(). isArchitectureSupported(architecture) }
566532 }
567533
0 commit comments