Skip to content

Add tests with external python dependencies to CI build#1618

Closed
agoodm wants to merge 1 commit intoapache:masterfrom
agoodm:ZEPPELIN-1639
Closed

Add tests with external python dependencies to CI build#1618
agoodm wants to merge 1 commit intoapache:masterfrom
agoodm:ZEPPELIN-1639

Conversation

@agoodm
Copy link
Copy Markdown
Member

@agoodm agoodm commented Nov 9, 2016

What is this PR for?

Many of our python tests are excluded from the main build profile and hence, the CI builds as well because they require external dependencies. This PR modifies .travis.yml to download the needed python dependencies for our tests (matplotlib, pandas, and pandasql) using conda.

What type of PR is it?

Improvement

Todos

  • - matplotlib test for PySparkInterpreter

What is the Jira issue?

ZEPPELIN-1639

How should this be tested?

Make sure newly added python tests (for matplotlib and pandas) are passing on CI!

Screenshots (if appropriate)

Questions:

  • Does the licenses files need update? No
  • Is there breaking changes for older versions? No
  • Does this needs documentation? No

@bzz
Copy link
Copy Markdown
Member

bzz commented Nov 9, 2016

Looks like CI is stalled during PySpark execution somehow..

16/11/09 09:46:13 INFO PySparkInterpreter: File /tmp/zeppelin_pyspark-7835708002435081304.py created


No output has been received in the last 10 minutes, this potentially indicates a stalled build or something wrong with the build itself.

The build has been terminated

@agoodm
Copy link
Copy Markdown
Member Author

agoodm commented Nov 9, 2016

This CI failure is not unrelated, it also happened on my fork. I have a hunch that changing the path might have something to do with it, which would be odd since I regularly use Zeppelin with conda-based python installations with no issues all the time. I'll keep testing this further.

@agoodm agoodm force-pushed the ZEPPELIN-1639 branch 2 times, most recently from 2a8559e to 1b2b6ed Compare November 14, 2016 09:40
@agoodm agoodm closed this Nov 14, 2016
@agoodm agoodm deleted the ZEPPELIN-1639 branch November 14, 2016 09:59
asfgit pushed a commit that referenced this pull request Nov 29, 2016
### What is this PR for?
Take 2 of #1618 because I had some earlier problems with rebasing. Since, then I have added some new features, namely:

- Matplotlib integration tests for pyspark
- `install_external_dependencies.sh` which conditionally installs the R or python dependencies based on the specified build profile in `.travis.yml`. This saves several minutes of time for a few of the build profiles since the R dependencies are compiled from source and therefore take quite a bit of time to install.
- The extra python unit tests which require external dependencies (`matplotlib` and `pandas`) are now relegated to two separate build profiles. This is done primarily to efficiently test both Python 2 and 3.
- Some minor bugs in the python and pyspark interpreters (mostly with respect to python 3 compatibility) were caught as a result of these tests, and are also fixed in this PR.

### What type of PR is it?
Improvement and Bugfix

### What is the Jira issue?
[ZEPPELIN-1639](https://issues.apache.org/jira/browse/ZEPPELIN-1639)

### How should this be tested?
CI tests should be green!

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No

Author: Alex Goodman <[email protected]>

Closes #1632 from agoodm/ZEPPELIN-1639 and squashes the following commits:

01380c2 [Alex Goodman] Make sure python 3 profile uses scala 2.11
363019e [Alex Goodman] Use spark 2.0 with python 3
a4f43af [Alex Goodman] Update comments in .travis.yml
5a60181 [Alex Goodman] Isolate python tests
73663f6 [Alex Goodman] Update tests for new InterpreterContext constructor
5709c5d [Alex Goodman] Re-add pyspark to build profile
ee95d67 [Alex Goodman] Move python 3 tests to all modules with spark 2.0
3a76958 [Alex Goodman] Travis
42da31c [Alex Goodman] Shorten python version
b6b88be [Alex Goodman] Add python dependencies to .travis.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants