/* * Licensed to Elasticsearch under one or more contributor * license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright * ownership. Elasticsearch licenses this file to you under * the Apache License, Version 2.0 (the "License"); you may * not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ import java.nio.file.Files import java.nio.file.Path apply plugin: 'elasticsearch.internal-distribution-archive-setup' CopySpec archiveFiles(CopySpec modulesFiles, String distributionType, String platform, String architecture, boolean oss, boolean jdk) { return copySpec { into("elasticsearch-${version}") { into('lib') { with libFiles(oss) } into('config') { dirMode 0750 fileMode 0660 with configFiles(distributionType, oss, jdk) from { dirMode 0750 jvmOptionsDir.getParent() } } into('bin') { with binFiles(distributionType, oss, jdk) } if (jdk) { into("darwin".equals(platform) ? 'jdk.app' : 'jdk') { with jdkFiles(project, platform, architecture) } } into('') { from { dirMode 0755 logsDir.getParent() } } into('') { from { dirMode 0755 pluginsDir.getParent() } } from(rootProject.projectDir) { include 'README.asciidoc' } from(rootProject.file('licenses')) { include oss ? 'APACHE-LICENSE-2.0.txt' : 'ELASTIC-LICENSE.txt' rename { 'LICENSE.txt' } } with noticeFile(oss, jdk) into('modules') { with modulesFiles } } } } distribution_archives { integTestZip { content { archiveFiles(transportModulesFiles, 'zip', null, 'x64', true, false) } } windowsZip { archiveClassifier = 'windows-x86_64' content { archiveFiles(modulesFiles(false, 'windows-x86_64'), 'zip', 'windows', 'x64', false, true) } } ossWindowsZip { archiveClassifier = 'windows-x86_64' content { archiveFiles(modulesFiles(true, 'windows-x86_64'), 'zip', 'windows', 'x64', true, true) } } noJdkWindowsZip { archiveClassifier = 'no-jdk-windows-x86_64' content { archiveFiles(modulesFiles(false, 'windows-x86_64'), 'zip', 'windows', 'x64', false, false) } } ossNoJdkWindowsZip { archiveClassifier = 'no-jdk-windows-x86_64' content { archiveFiles(modulesFiles(true, 'windows-x86_64'), 'zip', 'windows', 'x64', true, false) } } darwinTar { archiveClassifier = 'darwin-x86_64' content { archiveFiles(modulesFiles(false, 'darwin-x86_64'), 'tar', 'darwin', 'x64', false, true) } } ossDarwinTar { archiveClassifier = 'darwin-x86_64' content { archiveFiles(modulesFiles(true, 'darwin-x86_64'), 'tar', 'darwin', 'x64', true, true) } } noJdkDarwinTar { archiveClassifier = 'no-jdk-darwin-x86_64' content { archiveFiles(modulesFiles(false, 'darwin-x86_64'), 'tar', 'darwin', 'x64', false, false) } } ossNoJdkDarwinTar { archiveClassifier = 'no-jdk-darwin-x86_64' content { archiveFiles(modulesFiles(true, 'darwin-x86_64'), 'tar', 'darwin', 'x64', true, false) } } linuxAarch64Tar { archiveClassifier = 'linux-aarch64' content { archiveFiles(modulesFiles(false, 'linux-aarch64'), 'tar', 'linux', 'aarch64', false, true) } } linuxTar { archiveClassifier = 'linux-x86_64' content { archiveFiles(modulesFiles(false, 'linux-x86_64'), 'tar', 'linux', 'x64', false, true) } } ossLinuxAarch64Tar { archiveClassifier = 'linux-aarch64' content { archiveFiles(modulesFiles(true, 'linux-aarch64'), 'tar', 'linux', 'aarch64', true, true) } } ossLinuxTar { archiveClassifier = 'linux-x86_64' content { archiveFiles(modulesFiles(true, 'linux-x86_64'), 'tar', 'linux', 'x64', true, true) } } noJdkLinuxTar { archiveClassifier = 'no-jdk-linux-x86_64' content { archiveFiles(modulesFiles(false, 'linux-x86_64'), 'tar', 'linux', 'x64', false, false) } } ossNoJdkLinuxTar { archiveClassifier = 'no-jdk-linux-x86_64' content { archiveFiles(modulesFiles(true, 'linux-x86_64'), 'tar', 'linux', 'x64', true, false) } } } subprojects { apply plugin: 'distribution' apply plugin: 'elasticsearch.internal-distribution-archive-check' group = "org.elasticsearch.distribution.${name.startsWith("oss-") ? "oss" : "default"}" }