You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@bookkeeper.apache.org by GitBox <gi...@apache.org> on 2021/03/30 00:02:20 UTC
[GitHub] [bookkeeper] sursingh opened a new pull request #2666: ISSUE-2640: BP-43: Build distributions with gradle
sursingh opened a new pull request #2666:
URL: https://github.com/apache/bookkeeper/pull/2666
### Motivation
Migrate bookkeeper to gradle.
### Changes
added gradle build support for building distribution packages
* bookkeeper-dist-bkctl
* bookkeeper-dist-server
* bookkeeper-dist-all
* bookkeeper-dist-src
Also added build files for needed dependencies
Master Issue: #2640
#### Building:
```
./gradlew :bookkeeper-dist-src:distTar :bookkeeper-dist-server:distTar :bookkeeper-dist-bkctl:distTar :bookkeeper-dist-all:distTar
```
The package can be found under corresponding build/distributions
```
$ find bookkeeper-dist -name *.tar.gz -path *distributions*
bookkeeper-dist/bkctl/build/distributions/bkctl-4.14.0-SNAPSHOT.tar.gz
bookkeeper-dist/all/build/distributions/bookkeeper-all-4.14.0-SNAPSHOT.tar.gz
bookkeeper-dist/server/build/distributions/bookkeeper-server-4.14.0-SNAPSHOT.tar.gz
bookkeeper-dist/build/distributions/bookkeeper-4.14.0-SNAPSHOT-src.tar.gz
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [bookkeeper] sursingh commented on a change in pull request #2666: ISSUE-2640: BP-43: Build distributions with gradle
Posted by GitBox <gi...@apache.org>.
sursingh commented on a change in pull request #2666:
URL: https://github.com/apache/bookkeeper/pull/2666#discussion_r603748542
##########
File path: bookkeeper-dist/all/build.gradle
##########
@@ -0,0 +1,123 @@
+/*
+ * 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 'java'
+ id 'distribution'
+}
+
+description = 'Apache BookKeeper :: Dist (All)'
+
+dependencies {
+
+ implementation project(':bookkeeper-benchmark')
+ implementation project(':bookkeeper-http:http-server')
+ implementation project(':bookkeeper-http:vertx-http-server')
+ implementation project(':bookkeeper-server')
+ implementation project(':bookkeeper-stats-providers:codahale-metrics-provider')
+ implementation project(':bookkeeper-stats-providers:prometheus-metrics-provider')
+ implementation project(':bookkeeper-stats')
+ implementation project(':stream:distributedlog:core')
+ implementation project(':stream:server')
+ implementation project(':bookkeeper-tools')
+
+ compileOnly depLibs.lombok
+ compileOnly depLibs.spotbugsAnnotations
+
+ implementation depLibs.slf4jLog4j
+
+
+ testCompileOnly depLibs.lombok
+
+
+ annotationProcessor depLibs.lombok
+ testAnnotationProcessor depLibs.lombok
+}
+
+jar {
+ archiveBaseName = 'bookkeeper-dist-all'
+}
+
+def depLicences = [
+ "checker-qual-3.5.0/LICENSE",
+ "google-auth-library-credentials-0.20.0/LICENSE",
+ "javax.servlet-api-4.0.0/CDDL+GPL-1.1",
+ "bouncycastle-1.0.2/LICENSE.html",
+ "jsr-305/LICENSE",
+ "netty-4.1.50.Final/*",
+ "paranamer-2.8/LICENSE.txt",
+ "protobuf-3.14.0/LICENSE",
+ "protobuf-3.12.0/LICENSE",
+ "scala-library-2.11.7/LICENSE.md",
+ "scala-parser-combinators_2.11-1.0.4/LICENSE.md",
+ "scala-reflect-2.11.8/LICENSE.md",
+ "slf4j-1.7.25/LICENSE.txt",
Review comment:
Also couldn't see where we are using scala library. So I don't think we should be packaging these licenses. But we should take this up after we move completely to gradle.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [bookkeeper] merlimat commented on a change in pull request #2666: ISSUE-2640: BP-43: Build distributions with gradle
Posted by GitBox <gi...@apache.org>.
merlimat commented on a change in pull request #2666:
URL: https://github.com/apache/bookkeeper/pull/2666#discussion_r603722170
##########
File path: bookkeeper-dist/all/build.gradle
##########
@@ -0,0 +1,123 @@
+/*
+ * 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 'java'
+ id 'distribution'
+}
+
+description = 'Apache BookKeeper :: Dist (All)'
+
+dependencies {
+
+ implementation project(':bookkeeper-benchmark')
+ implementation project(':bookkeeper-http:http-server')
+ implementation project(':bookkeeper-http:vertx-http-server')
+ implementation project(':bookkeeper-server')
+ implementation project(':bookkeeper-stats-providers:codahale-metrics-provider')
+ implementation project(':bookkeeper-stats-providers:prometheus-metrics-provider')
+ implementation project(':bookkeeper-stats')
+ implementation project(':stream:distributedlog:core')
+ implementation project(':stream:server')
+ implementation project(':bookkeeper-tools')
+
+ compileOnly depLibs.lombok
+ compileOnly depLibs.spotbugsAnnotations
+
+ implementation depLibs.slf4jLog4j
+
+
+ testCompileOnly depLibs.lombok
+
+
+ annotationProcessor depLibs.lombok
+ testAnnotationProcessor depLibs.lombok
+}
+
+jar {
+ archiveBaseName = 'bookkeeper-dist-all'
+}
+
+def depLicences = [
+ "checker-qual-3.5.0/LICENSE",
+ "google-auth-library-credentials-0.20.0/LICENSE",
+ "javax.servlet-api-4.0.0/CDDL+GPL-1.1",
+ "bouncycastle-1.0.2/LICENSE.html",
+ "jsr-305/LICENSE",
+ "netty-4.1.50.Final/*",
+ "paranamer-2.8/LICENSE.txt",
+ "protobuf-3.14.0/LICENSE",
+ "protobuf-3.12.0/LICENSE",
+ "scala-library-2.11.7/LICENSE.md",
+ "scala-parser-combinators_2.11-1.0.4/LICENSE.md",
+ "scala-reflect-2.11.8/LICENSE.md",
+ "slf4j-1.7.25/LICENSE.txt",
Review comment:
Is there any other way to avoid specifying the exact version here, so that we only need to update the version in 1 place?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [bookkeeper] merlimat merged pull request #2666: ISSUE-2640: BP-43: Build distributions with gradle
Posted by GitBox <gi...@apache.org>.
merlimat merged pull request #2666:
URL: https://github.com/apache/bookkeeper/pull/2666
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [bookkeeper] sursingh commented on a change in pull request #2666: ISSUE-2640: BP-43: Build distributions with gradle
Posted by GitBox <gi...@apache.org>.
sursingh commented on a change in pull request #2666:
URL: https://github.com/apache/bookkeeper/pull/2666#discussion_r604274954
##########
File path: bookkeeper-dist/all/build.gradle
##########
@@ -0,0 +1,123 @@
+/*
+ * 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 'java'
+ id 'distribution'
+}
+
+description = 'Apache BookKeeper :: Dist (All)'
+
+dependencies {
+
+ implementation project(':bookkeeper-benchmark')
+ implementation project(':bookkeeper-http:http-server')
+ implementation project(':bookkeeper-http:vertx-http-server')
+ implementation project(':bookkeeper-server')
+ implementation project(':bookkeeper-stats-providers:codahale-metrics-provider')
+ implementation project(':bookkeeper-stats-providers:prometheus-metrics-provider')
+ implementation project(':bookkeeper-stats')
+ implementation project(':stream:distributedlog:core')
+ implementation project(':stream:server')
+ implementation project(':bookkeeper-tools')
+
+ compileOnly depLibs.lombok
+ compileOnly depLibs.spotbugsAnnotations
+
+ implementation depLibs.slf4jLog4j
+
+
+ testCompileOnly depLibs.lombok
+
+
+ annotationProcessor depLibs.lombok
+ testAnnotationProcessor depLibs.lombok
+}
+
+jar {
+ archiveBaseName = 'bookkeeper-dist-all'
+}
+
+def depLicences = [
+ "checker-qual-3.5.0/LICENSE",
+ "google-auth-library-credentials-0.20.0/LICENSE",
+ "javax.servlet-api-4.0.0/CDDL+GPL-1.1",
+ "bouncycastle-1.0.2/LICENSE.html",
+ "jsr-305/LICENSE",
+ "netty-4.1.50.Final/*",
+ "paranamer-2.8/LICENSE.txt",
+ "protobuf-3.14.0/LICENSE",
+ "protobuf-3.12.0/LICENSE",
+ "scala-library-2.11.7/LICENSE.md",
+ "scala-parser-combinators_2.11-1.0.4/LICENSE.md",
+ "scala-reflect-2.11.8/LICENSE.md",
+ "slf4j-1.7.25/LICENSE.txt",
Review comment:
Another option would be use a https://github.com/jk1/Gradle-License-Report plugin. With this we can automate the license report and also avoid the need to maintain license files.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [bookkeeper] sursingh commented on a change in pull request #2666: ISSUE-2640: BP-43: Build distributions with gradle
Posted by GitBox <gi...@apache.org>.
sursingh commented on a change in pull request #2666:
URL: https://github.com/apache/bookkeeper/pull/2666#discussion_r603740965
##########
File path: bookkeeper-dist/all/build.gradle
##########
@@ -0,0 +1,123 @@
+/*
+ * 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 'java'
+ id 'distribution'
+}
+
+description = 'Apache BookKeeper :: Dist (All)'
+
+dependencies {
+
+ implementation project(':bookkeeper-benchmark')
+ implementation project(':bookkeeper-http:http-server')
+ implementation project(':bookkeeper-http:vertx-http-server')
+ implementation project(':bookkeeper-server')
+ implementation project(':bookkeeper-stats-providers:codahale-metrics-provider')
+ implementation project(':bookkeeper-stats-providers:prometheus-metrics-provider')
+ implementation project(':bookkeeper-stats')
+ implementation project(':stream:distributedlog:core')
+ implementation project(':stream:server')
+ implementation project(':bookkeeper-tools')
+
+ compileOnly depLibs.lombok
+ compileOnly depLibs.spotbugsAnnotations
+
+ implementation depLibs.slf4jLog4j
+
+
+ testCompileOnly depLibs.lombok
+
+
+ annotationProcessor depLibs.lombok
+ testAnnotationProcessor depLibs.lombok
+}
+
+jar {
+ archiveBaseName = 'bookkeeper-dist-all'
+}
+
+def depLicences = [
+ "checker-qual-3.5.0/LICENSE",
+ "google-auth-library-credentials-0.20.0/LICENSE",
+ "javax.servlet-api-4.0.0/CDDL+GPL-1.1",
+ "bouncycastle-1.0.2/LICENSE.html",
+ "jsr-305/LICENSE",
+ "netty-4.1.50.Final/*",
+ "paranamer-2.8/LICENSE.txt",
+ "protobuf-3.14.0/LICENSE",
+ "protobuf-3.12.0/LICENSE",
+ "scala-library-2.11.7/LICENSE.md",
+ "scala-parser-combinators_2.11-1.0.4/LICENSE.md",
+ "scala-reflect-2.11.8/LICENSE.md",
+ "slf4j-1.7.25/LICENSE.txt",
Review comment:
We can add a wildcard for these. But do we want to tie the version of the packaged dependency? That will be a little more involved.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org