-
Notifications
You must be signed in to change notification settings - Fork 7.3k
ZOOKEEPER-3436 Enhance Mavenized Make C client #993
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
anmolnar
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 Flawless on Centos 7.
|
Fails for me with
"ant clean compile compile-native" works fine with the same codebase. Here's the error I see with the mvn build attempt: |
phunt
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems to be failing with maven and not ant.
|
It is failing for me as well in another env. I am cleaning up |
|
@phunt I solved my problem by cleaning up all stuff generated by previous build with ant (mostly like these ones, and all .so, .o....) : |
|
I could add in a "clean" phase some sort of purge task that clean every artifact produced by "make" (with a static list) |
|
I have committed a more maven-friendly .gitignore for zookeeper-c-client directory @phunt @anmolnar You should see the file to be deleted with "git status" as files produced by a direct execution of commands on the zookeeper-c-client directory |
|
C client tests passed on ASF Jenkins They run on my Fedora laptop as well |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 from my side, tested after git clean -fdx and ant clean, with multiple runs including
mvn clean install -DskipTests -Pfull-build
Ubuntu 16.04.6 LTS (Xenial Xerus)
Let's wait and see if the second commit solves for Patrick as well.
|
|
|
@phunt shall we merge this patch as it is or would you prefer that I enhance the 'clean' task? |
|
@phunt ping |
|
Cannot be merged until @phunt removes the -1. |
|
@phunt PTAL |
|
@phunt I see you are online, please take a look. |
|
Afraid I'm still seeing the same issue with mvn while ant works fine, this is mvn: I did a "git clean -xdf" but that had/has no effect. |
29384f2 to
44f6ba5
Compare
|
we found the problem with @nkalmar: the gcov library is used only when the It would be nice to introduce an optional maven parameter and not using gcov by default. (It doesn't make much sense to measure test coverage all the time when we want to build the client). |
| <execution> | ||
| <id>configure</id> | ||
| <phase>test-compile</phase> | ||
| <phase>process-sources</phase> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is where --enable-gcov is passed, the phase which this runs probably surfaced the problem for Patrick? If someone doesn't have the library it will always fail, with ant only if they run a c-coverege report.
Thanks @symat for finding this!
|
Sorry @eolivelli , this is my bad, during the migration I didn't pay attention gcov should only be passed if we run code-coverage. (As I had the library installed it never failed for me) |
|
Can you pick up this branch? |
do you suggest to create a new Jira about adding a new maven parameter for |
|
@symat I think you can do it within this JIRA, it is about "Enhance the Maven build". I will review your patch as soon as it is ready Thanks |
|
I created a new PR (#1078), please take a look. |
|
closing this one, thank you @symat |
Based on eolivelli 's [previous pull request](#993) we enhanced now the maven C client build: - we can compile now the C-client without tests (using the -DskipTests option) - we can optionally enable the test coverage calculation for the C-client (-Pc-test-coverage) - we also package the C-client into the binary tarball (when -Pfull-build is used) - I also updated the README_packaging.md file to make user's life easier (happier? :) ) I tested the build on ubuntu 16.04. Author: Mate Szalay-Beko <mszalay@cloudera.com> Author: Enrico Olivelli <eolivelli@apache.org> Reviewers: nkalmar@apache.org, eolivelli@apache.org, andor@apache.org Closes #1078 from symat/ZOOKEEPER-3436 and squashes the following commits: 18250df [Mate Szalay-Beko] ZOOKEEPER-3436 remove the C binaries from the binary tarball; update the readme files 57b7cd6 [Mate Szalay-Beko] ZOOKEEPER-3436 fixing file permissions of usr/bin/* in binary tarball a2ac025 [Mate Szalay-Beko] ZOOKEEPER-3436 enhance / format README_packaging.md 30eea5e [Mate Szalay-Beko] ZOOKEEPER-3436 exclude README_packaging.md from license check 936550e [Mate Szalay-Beko] ZOOKEEPER-3436 fixing README_packaging.md f010295 [Mate Szalay-Beko] ZOOKEEPER-3436 Enhance Mavenized Make C client 44f6ba5 [Enrico Olivelli] Better .gitignore 2046037 [Enrico Olivelli] Enhance Mavenized Make C client
Based on eolivelli 's [previous pull request](apache#993) we enhanced now the maven C client build: - we can compile now the C-client without tests (using the -DskipTests option) - we can optionally enable the test coverage calculation for the C-client (-Pc-test-coverage) - we also package the C-client into the binary tarball (when -Pfull-build is used) - I also updated the README_packaging.md file to make user's life easier (happier? :) ) I tested the build on ubuntu 16.04. Author: Mate Szalay-Beko <mszalay@cloudera.com> Author: Enrico Olivelli <eolivelli@apache.org> Reviewers: nkalmar@apache.org, eolivelli@apache.org, andor@apache.org Closes apache#1078 from symat/ZOOKEEPER-3436 and squashes the following commits: 18250df [Mate Szalay-Beko] ZOOKEEPER-3436 remove the C binaries from the binary tarball; update the readme files 57b7cd6 [Mate Szalay-Beko] ZOOKEEPER-3436 fixing file permissions of usr/bin/* in binary tarball a2ac025 [Mate Szalay-Beko] ZOOKEEPER-3436 enhance / format README_packaging.md 30eea5e [Mate Szalay-Beko] ZOOKEEPER-3436 exclude README_packaging.md from license check 936550e [Mate Szalay-Beko] ZOOKEEPER-3436 fixing README_packaging.md f010295 [Mate Szalay-Beko] ZOOKEEPER-3436 Enhance Mavenized Make C client 44f6ba5 [Enrico Olivelli] Better .gitignore 2046037 [Enrico Olivelli] Enhance Mavenized Make C client
Based on eolivelli 's [previous pull request](apache#993) we enhanced now the maven C client build: - we can compile now the C-client without tests (using the -DskipTests option) - we can optionally enable the test coverage calculation for the C-client (-Pc-test-coverage) - we also package the C-client into the binary tarball (when -Pfull-build is used) - I also updated the README_packaging.md file to make user's life easier (happier? :) ) I tested the build on ubuntu 16.04. Author: Mate Szalay-Beko <mszalay@cloudera.com> Author: Enrico Olivelli <eolivelli@apache.org> Reviewers: nkalmar@apache.org, eolivelli@apache.org, andor@apache.org Closes apache#1078 from symat/ZOOKEEPER-3436 and squashes the following commits: 18250df [Mate Szalay-Beko] ZOOKEEPER-3436 remove the C binaries from the binary tarball; update the readme files 57b7cd6 [Mate Szalay-Beko] ZOOKEEPER-3436 fixing file permissions of usr/bin/* in binary tarball a2ac025 [Mate Szalay-Beko] ZOOKEEPER-3436 enhance / format README_packaging.md 30eea5e [Mate Szalay-Beko] ZOOKEEPER-3436 exclude README_packaging.md from license check 936550e [Mate Szalay-Beko] ZOOKEEPER-3436 fixing README_packaging.md f010295 [Mate Szalay-Beko] ZOOKEEPER-3436 Enhance Mavenized Make C client 44f6ba5 [Enrico Olivelli] Better .gitignore 2046037 [Enrico Olivelli] Enhance Mavenized Make C client
Based on eolivelli 's [previous pull request](apache#993) we enhanced now the maven C client build: - we can compile now the C-client without tests (using the -DskipTests option) - we can optionally enable the test coverage calculation for the C-client (-Pc-test-coverage) - we also package the C-client into the binary tarball (when -Pfull-build is used) - I also updated the README_packaging.md file to make user's life easier (happier? :) ) I tested the build on ubuntu 16.04. Author: Mate Szalay-Beko <mszalay@cloudera.com> Author: Enrico Olivelli <eolivelli@apache.org> Reviewers: nkalmar@apache.org, eolivelli@apache.org, andor@apache.org Closes apache#1078 from symat/ZOOKEEPER-3436 and squashes the following commits: 18250df [Mate Szalay-Beko] ZOOKEEPER-3436 remove the C binaries from the binary tarball; update the readme files 57b7cd6 [Mate Szalay-Beko] ZOOKEEPER-3436 fixing file permissions of usr/bin/* in binary tarball a2ac025 [Mate Szalay-Beko] ZOOKEEPER-3436 enhance / format README_packaging.md 30eea5e [Mate Szalay-Beko] ZOOKEEPER-3436 exclude README_packaging.md from license check 936550e [Mate Szalay-Beko] ZOOKEEPER-3436 fixing README_packaging.md f010295 [Mate Szalay-Beko] ZOOKEEPER-3436 Enhance Mavenized Make C client 44f6ba5 [Enrico Olivelli] Better .gitignore 2046037 [Enrico Olivelli] Enhance Mavenized Make C client
Fix the pom of the zookeeeper-c-client in order to comply to the standard maven workflow:
Build without tests:
mvn clean install -DskipTestsBuild and test
mvn clean install -DskipTestsMore details here:
https://issues.apache.org/jira/browse/ZOOKEEPER-3436