/*
 * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
 * or more contributor license agreements. Licensed under the "Elastic License
 * 2.0", the "GNU Affero General Public License v3.0 only", and the "Server Side
 * Public License v 1"; you may not use this file except in compliance with, at
 * your election, the "Elastic License 2.0", the "GNU Affero General Public
 * License v3.0 only", or the "Server Side Public License, v 1".
 */

subprojects {
    apply plugin:'base'
    tasks.register('tar', Tar) {
        from('.')
        destinationDirectory.set(file('build/distributions'))
        archiveBaseName.set("elasticsearch${project.name.startsWith('oss')?'-oss':''}")
        def versionFromBranch = calculateBranchVersion()
        archiveVersion.set("${versionFromBranch}-SNAPSHOT")
        archiveClassifier.set("darwin-x86_64")
        archiveExtension.set('tar.gz')
    }

    tasks.register('extracted', Copy) {
        from('.')
        destinationDir = file('build/extractedDistro')
    }

    tasks.register("extractedAssemble").configure {
        dependsOn('extracted')
    }

    tasks.named("assemble").configure {
        dependsOn('tar')
    }
}

def calculateBranchVersion() {
    File f = layout.settingsDirectory.file(".git/refs/heads/origin").asFile
    def branchName = f.list()?.first().trim()
    return branchName + ".1"

}
