[
https://issues.apache.org/jira/browse/BEAM-4744?focusedWorklogId=122148&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-122148
]
ASF GitHub Bot logged work on BEAM-4744:
----------------------------------------
Author: ASF GitHub Bot
Created on: 12/Jul/18 03:16
Start Date: 12/Jul/18 03:16
Worklog Time Spent: 10m
Work Description: lukecwik closed pull request #5936: [BEAM-4744] Enable
parallel publishing/release
URL: https://github.com/apache/beam/pull/5936
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git
a/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
b/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
index 80e94f3a7dd..da0a8750ecc 100644
--- a/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
+++ b/buildSrc/src/main/groovy/org/apache/beam/gradle/BeamModulePlugin.groovy
@@ -642,7 +642,6 @@ class BeamModulePlugin implements Plugin<Project> {
// Enable errorprone static analysis
project.apply plugin: 'net.ltgt.errorprone'
- project.tasks.withType(JavaCompile) { options.compilerArgs +=
"-XepDisableWarningsInGeneratedCode" }
// Enables a plugin which can perform shading of classes. See the
general comments
// above about dependency management for Java projects and how the
shadow plugin
@@ -663,9 +662,14 @@ class BeamModulePlugin implements Plugin<Project> {
testCompile.extendsFrom shadowTest
}
+ project.jar {
+ classifier = "unshaded"
+ zip64 true
+ }
+
// Always configure the shadowJar classifier and merge service files.
project.shadowJar({
- classifier = "shaded"
+ classifier = null
mergeServiceFiles()
zip64 true
into("META-INF/") {
@@ -678,7 +682,7 @@ class BeamModulePlugin implements Plugin<Project> {
project.task('shadowTestJar', type: ShadowJar, {
group = "Shadow"
description = "Create a combined JAR of project and test dependencies"
- classifier = "shaded-tests"
+ classifier = "tests"
from project.sourceSets.test.output
configurations = [
project.configurations.testRuntime
@@ -797,12 +801,11 @@ artifactId=${project.name}
publications {
mavenJava(MavenPublication) {
- artifact project.shadowJar { // Strip the "shaded" classifier.
- classifier null }
- artifact project.shadowTestJar, { classifier "tests" }
- artifact project.sourcesJar, { classifier "sources" }
- artifact project.testSourcesJar, { classifier "testSources" }
- artifact project.javadocJar, { classifier "javadoc" }
+ artifact project.shadowJar
+ artifact project.shadowTestJar
+ artifact project.sourcesJar
+ artifact project.testSourcesJar
+ artifact project.javadocJar
pom {
name = project.description
diff --git a/examples/java/build.gradle b/examples/java/build.gradle
index 70cdfad6300..48d3c9bcf54 100644
--- a/examples/java/build.gradle
+++ b/examples/java/build.gradle
@@ -123,7 +123,7 @@ task preCommit() {
for (String runner : preCommitRunners) {
dependsOn runner + "PreCommit"
}
- dependsOn ":runners:google-cloud-dataflow-java:examples:preCommit"
- dependsOn ":runners:google-cloud-dataflow-java:examples-streaming:preCommit"
+ dependsOn ":beam-runners-google-cloud-dataflow-java-examples:preCommit"
+ dependsOn
":beam-runners-google-cloud-dataflow-java-examples-streaming:preCommit"
}
diff --git a/model/fn-execution/build.gradle b/model/fn-execution/build.gradle
index 4ea3cf8b66c..3194fcf1279 100644
--- a/model/fn-execution/build.gradle
+++ b/model/fn-execution/build.gradle
@@ -23,8 +23,8 @@ description = "Apache Beam :: Model :: Fn Execution"
ext.summary = "Portable definitions for execution user-defined functions."
dependencies {
- // We purposely depend on the unshaded classes for compilation and
+ // We purposely depend on the unshaded classes for protobuf compilation and
// export the shaded variant as the actual runtime dependency.
- compile project(path: ":beam-model-pipeline")
+ protobuf project(path: ":beam-model-pipeline", configuration: "unshaded")
runtime project(path: ":beam-model-pipeline", configuration: "shadow")
}
diff --git a/model/job-management/build.gradle
b/model/job-management/build.gradle
index 0cbcb2936cf..e453e33ba09 100644
--- a/model/job-management/build.gradle
+++ b/model/job-management/build.gradle
@@ -23,8 +23,8 @@ description = "Apache Beam :: Model :: Job Management"
ext.summary = "Portable definitions for submitting pipelines."
dependencies {
- // We purposely depend on the unshaded classes for compilation and
+ // We purposely depend on the unshaded classes for protobuf compilation and
// export the shaded variant as the actual runtime dependency.
- compile project(path: ":beam-model-pipeline")
+ protobuf project(path: ":beam-model-pipeline", configuration: "unshaded")
runtime project(path: ":beam-model-pipeline", configuration: "shadow")
}
diff --git a/model/pipeline/build.gradle b/model/pipeline/build.gradle
index f0016a61d21..016a766392e 100644
--- a/model/pipeline/build.gradle
+++ b/model/pipeline/build.gradle
@@ -21,3 +21,11 @@ applyPortabilityNature()
description = "Apache Beam :: Model :: Pipeline"
ext.summary = "Portable definitions for building pipelines"
+
+configurations {
+ unshaded
+}
+
+artifacts {
+ unshaded jar
+}
diff --git a/runners/google-cloud-dataflow-java/examples-streaming/build.gradle
b/runners/google-cloud-dataflow-java/examples-streaming/build.gradle
index 30376d046f1..9741166d45d 100644
--- a/runners/google-cloud-dataflow-java/examples-streaming/build.gradle
+++ b/runners/google-cloud-dataflow-java/examples-streaming/build.gradle
@@ -44,7 +44,7 @@ task preCommit(type: Test) {
testClassesDirs =
files(project(":beam-examples-java").sourceSets.test.output.classesDirs)
include "**/WordCountIT.class"
// Don't include WindowedWordCountIT, since it is already included in
- // :runners:google-cloud-dataflow-java:examples:preCommit and runs
+ // :beam-runners-google-cloud-dataflow-java-examples:preCommit and runs
// identically (ignores the --streaming flag).
forkEvery 1
maxParallelForks 4
diff --git
a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/ReadTranslator.java
b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/ReadTranslator.java
old mode 100755
new mode 100644
diff --git
a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/internal/CustomSources.java
b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/internal/CustomSources.java
old mode 100755
new mode 100644
diff --git
a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/internal/package-info.java
b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/internal/package-info.java
old mode 100755
new mode 100644
diff --git
a/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/FnService.java
b/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/FnService.java
index 724cfbaaff2..17c07edc90f 100644
---
a/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/FnService.java
+++
b/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/FnService.java
@@ -26,9 +26,10 @@
* {@inheritDoc}.
*
* <p>There should be no more calls to any service method by the time a call
to {@link #close()}
- * begins. Specifically, this means that a {@link io.grpc.Server} that this
service is bound to
- * should have completed a call to the {@link io.grpc.Server#shutdown()}
method, and all future
- * incoming calls will be rejected.
+ * begins. Specifically, this means that a {@link
org.apache.beam.vendor.grpc.v1.io.grpc.Server}
+ * that this service is bound to should have completed a call to the {@link
+ * org.apache.beam.vendor.grpc.v1.io.grpc.Server#shutdown()} method, and all
future incoming calls
+ * will be rejected.
*/
@Override
void close() throws Exception;
diff --git
a/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/state/StateRequestHandlers.java
b/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/state/StateRequestHandlers.java
index 4b36c25e356..18e45481221 100644
---
a/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/state/StateRequestHandlers.java
+++
b/runners/java-fn-execution/src/main/java/org/apache/beam/runners/fnexecution/state/StateRequestHandlers.java
@@ -325,13 +325,13 @@ public static StateRequestHandler
forSideInputHandlerFactory(
* Returns an adapter which converts a {@link BagUserStateHandlerFactory} to
a {@link
* StateRequestHandler}.
*
- * <p>The {@link MultimapSideInputHandlerFactory} is required to handle all
multimap side inputs
- * contained within the {@link ExecutableProcessBundleDescriptor}. See {@link
- * ExecutableProcessBundleDescriptor#getMultimapSideInputSpecs} for the set
of multimap side
- * inputs that are contained.
+ * <p>The {@link SideInputHandlerFactory} is required to handle all multimap
side inputs contained
+ * within the {@link ExecutableProcessBundleDescriptor}. See {@link
+ * ExecutableProcessBundleDescriptor#getSideInputSpecs} for the set of
multimap side inputs that
+ * are contained.
*
- * <p>Instances of {@link MultimapSideInputHandler}s returned by the {@link
- * MultimapSideInputHandlerFactory} are cached.
+ * <p>Instances of {@link SideInputHandler}s returned by the {@link
SideInputHandlerFactory} are
+ * cached.
*/
public static StateRequestHandler forBagUserStateHandlerFactory(
ExecutableProcessBundleDescriptor processBundleDescriptor,
diff --git
a/sdks/java/extensions/sketching/src/main/java/org/apache/beam/sdk/extensions/sketching/package-info.java
b/sdks/java/extensions/sketching/src/main/java/org/apache/beam/sdk/extensions/sketching/package-info.java
old mode 100755
new mode 100644
diff --git a/settings.gradle b/settings.gradle
index b44236ee516..90bf3f91b9e 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -50,10 +50,10 @@ include "beam-runners-gearpump"
project(":beam-runners-gearpump").dir = file("runners/gearpump")
include "beam-runners-google-cloud-dataflow-java"
project(":beam-runners-google-cloud-dataflow-java").dir =
file("runners/google-cloud-dataflow-java")
-// These 2 projects will not be published to Maven so they don't get a special
-// dashed name.
-include ":runners:google-cloud-dataflow-java:examples"
-include ":runners:google-cloud-dataflow-java:examples-streaming"
+include ":beam-runners-google-cloud-dataflow-java-examples"
+project(":beam-runners-google-cloud-dataflow-java-examples").dir =
file("runners/google-cloud-dataflow-java/examples")
+include ":beam-runners-google-cloud-dataflow-java-examples-streaming"
+project(":beam-runners-google-cloud-dataflow-java-examples-streaming").dir =
file("runners/google-cloud-dataflow-java/examples")
include "beam-runners-java-fn-execution"
project(":beam-runners-java-fn-execution").dir =
file("runners/java-fn-execution")
include "beam-runners-local-java-core"
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 122148)
Time Spent: 1h (was: 50m)
> Jars are overwritten during release with -Ppublishing
> -----------------------------------------------------
>
> Key: BEAM-4744
> URL: https://issues.apache.org/jira/browse/BEAM-4744
> Project: Beam
> Issue Type: Bug
> Components: build-system
> Reporter: Mark Liu
> Assignee: Alan Myrvold
> Priority: Blocker
> Fix For: 2.6.0
>
> Time Spent: 1h
> Remaining Estimate: 0h
>
> +cc [~pabloem] [~boyuanz] [~lukecwik]
> Few jars (*-shaded.jar and *-tests.jar) are missing if I run `./gradlew
> -Ppublishing :publishToMavenLocal`.
> However, I can get them through assemble and shadowJar. For example,
> `./gradlew :beam-sdks-java-core:assemble :beam-sdks-java-core:shadowJar`.
> This could be the reason why we can't run parallel build during release.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)