-
Notifications
You must be signed in to change notification settings - Fork 308
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
[ADAM-132] allowing list of commands to be injected into adam-cli ADAMMain #762
Conversation
When working on https://github.com/heuermh/adam-commands, downstream to this pull request, I ran into a build problem $ mvn package
...
[INFO] --- scala-maven-plugin:3.2.0:compile (scala-compile-first) @ adam-commands_2.10 ---
[WARNING] Invalid POM for org.bdgenomics.adam:adam-cli_2.10:jar:0.17.1-SNAPSHOT, transitive dependencies (if any) will not be available, enable debug logging for more details
...
[ERROR] error while loading ADAMMain, Missing dependency 'bad symbolic reference. A
signature in ADAMMain.class refers to term inject in package javax which is not
available. It may be completely missing from the current classpath, or the version on
the classpath might be incompatible with the version used when compiling ADAMMain.class.',
required by /Users/xxx/.m2/repository/org/bdgenomics/adam/adam-cli_2.10/0.17.1-SNAPSHOT/adam-cli_2.10-0.17.1-SNAPSHOT.jar(org/bdgenomics/adam/cli/ADAMMain.class)
[ERROR] one error found |
@heuermh Have you figured out the issue with downstream projects yet? |
@massie Haven't been able to reproduce today, works fine for me with both JDKs 7 and 8. Must have been some maven snapshot strangeness. |
The real question with this pull request is how to actually run the main in the repo above.
Hopefully there's enough there to demonstrate the use case. |
This can wait until post-0.17.1 release |
Test FAILed. Build result: FAILURE[...truncated 16 lines...] > git rev-list 81c1f0d # timeout=10Triggering ADAM-prb ? 2.6.0,2.10,1.4.1,centosTriggering ADAM-prb ? 2.6.0,2.11,1.4.1,centosTriggering ADAM-prb ? 2.3.0,2.10,1.3.1,centosTriggering ADAM-prb ? 2.3.0,2.11,1.3.1,centosTriggering ADAM-prb ? 2.6.0,2.11,1.3.1,centosTriggering ADAM-prb ? 2.3.0,2.10,1.4.1,centosTriggering ADAM-prb ? 2.3.0,2.11,1.2.1,centosTriggering ADAM-prb ? 1.0.4,2.11,1.2.1,centosTriggering ADAM-prb ? 1.0.4,2.10,1.2.1,centosTriggering ADAM-prb ? 2.3.0,2.11,1.4.1,centosTriggering ADAM-prb ? 2.3.0,2.10,1.2.1,centosTriggering ADAM-prb ? 2.6.0,2.10,1.3.1,centosADAM-prb ? 2.3.0,2.10,1.3.1,centos completed with result FAILUREADAM-prb ? 2.3.0,2.11,1.3.1,centos completed with result FAILUREADAM-prb ? 2.6.0,2.11,1.3.1,centos completed with result FAILUREADAM-prb ? 2.3.0,2.10,1.4.1,centos completed with result FAILUREADAM-prb ? 2.3.0,2.11,1.2.1,centos completed with result FAILUREADAM-prb ? 1.0.4,2.11,1.2.1,centos completed with result SUCCESSADAM-prb ? 1.0.4,2.10,1.2.1,centos completed with result FAILUREADAM-prb ? 2.3.0,2.11,1.4.1,centos completed with result FAILUREADAM-prb ? 2.3.0,2.10,1.2.1,centos completed with result FAILUREADAM-prb ? 2.6.0,2.10,1.3.1,centos completed with result FAILURENotifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'Test FAILed. |
Jenkins, retest this please |
Test PASSed. |
Console.withOut(stream) { | ||
ADAMMain.main(Array()) | ||
} | ||
assert(stream.toString().contains("flatten")) |
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.
Calling the ADAMMain with an empty Array() will cause the help page to output, correct? If so, we should put a comment that effect and change the assert to look for the word "help" or some such.
With a little cleanup, this looks ready to go. What do you think @heuermh ? |
Yep, thank you for the review, @massie |
Note even with code fixes as described above, this still won't be usable until this or one of the other options above is addressed
|
Test FAILed. Build result: FAILUREGitHub pull request #762 of commit e8765b8 automatically merged.Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'[EnvInject] - Loading node environment variables.Building remotely on amp-jenkins-worker-05 (centos spark-test) in workspace /home/jenkins/workspace/ADAM-prb > git rev-parse --is-inside-work-tree # timeout=10Fetching changes from the remote Git repository > git config remote.origin.url https://github.com/bigdatagenomics/adam.git # timeout=10Fetching upstream changes from https://github.com/bigdatagenomics/adam.git > git --version # timeout=10 > git fetch --tags --progress https://github.com/bigdatagenomics/adam.git +refs/pull/:refs/remotes/origin/pr/ > git rev-parse origin/pr/762/merge^{commit} # timeout=10 > git branch -a --contains 2df3bb2 # timeout=10 > git rev-parse remotes/origin/pr/762/merge^{commit} # timeout=10Checking out Revision 2df3bb2 (origin/pr/762/merge) > git config core.sparsecheckout # timeout=10 > git checkout -f 2df3bb2 > git rev-list a9c8d4d8f9e77436900a3080f7e1fbe6a0b53fd0 # timeout=10Triggering ADAM-prb ? 2.6.0,2.10,1.4.1,centosTriggering ADAM-prb ? 2.6.0,2.11,1.4.1,centosTouchstone configurations resulted in FAILURE, so aborting...Notifying endpoint 'HTTP:https://webhooks.gitter.im/e/ac8bb6e9f53357bc8aa8'Test FAILed. |
Jenkins, test this please. |
Test PASSed. |
@heuermh I want to test this on the cluster. Do you have an example project showing how I could inject a new command? |
@fnothaft The example I've been using is here https://github.com/heuermh/adam-commands. Note the patch regarding the main class argument in the readme, which needs to be updated after the bin scripts have changed. It is soon on my list of things to go to create such a pull request. See also previous comment #762 (comment) |
Work in progress towards #132.
Please be brutal in code review; I'm not very confident writing in scala or using scalatest yet.