blob: e42aafc5f42463b1791423ed2276409c5ebbf4e6 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF 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.
*/
plugins {
id 'org.apache.beam.module'
}
applyJavaNature(
automaticModuleName: 'org.apache.beam.sdk.io.iceberg.bqms',
shadowClosure: {},
exportJavadoc: false,
publish: false, // it's an intermediate jar for io-expansion-service
validateShadowJar: false
)
def libDir = "$buildDir/libs"
def bqmsFileName = "iceberg-bqms-catalog-${iceberg_bqms_catalog_version}.jar"
task downloadBqmsJar(type: Copy) {
// TODO: remove this workaround and downlooad normally when the catalog gets open-sourced:
// (https://github.com/apache/iceberg/pull/11039)
def jarUrl = "https://storage.googleapis.com/spark-lib/bigquery/iceberg-bigquery-catalog-${iceberg_bqms_catalog_version}.jar"
def outputDir = file("$libDir")
outputDir.mkdirs()
def destFile = new File(outputDir, bqmsFileName)
if (!destFile.exists()) {
try {
ant.get(src: jarUrl, dest: destFile)
println "Successfully downloaded BQMS catalog jar: $destFile"
} catch (Exception e) {
println "Could not download $jarUrl: ${e.message}"
}
}
}
repositories {
flatDir {
dirs "$libDir"
}
}
compileJava.dependsOn downloadBqmsJar
dependencies {
implementation files("$libDir/$bqmsFileName")
}
description = "Apache Beam :: SDKs :: Java :: IO :: Iceberg :: BigQuery Metastore"
ext.summary = "A copy of the BQMS catalog."