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

Run Travis CI tests in OS X based environment #26

Merged
merged 11 commits into from May 2, 2017

Conversation

Projects
None yet
2 participants
@webknjaz
Member

webknjaz commented Apr 28, 2017

  • PoC of running tests under MacOS
  • reusable YAML anchors reduce config duplication dramatically
  • completely pyenv based python installations

webknjaz added some commits Apr 28, 2017

@webknjaz webknjaz requested a review from jaraco Apr 28, 2017

webknjaz added some commits Apr 28, 2017

Add caching of brew data
* also print cache dir
@webknjaz

This comment has been minimized.

Member

webknjaz commented Apr 29, 2017

@jaraco I've found a working way to run tests under OS X in TravisCI. Should we run them across all envs or maybe just a few?

@jaraco

jaraco approved these changes Apr 29, 2017

This all seems reasonable to me. It does feel quite a bit like it's adding a good deal of complication to the config, increasing the barrier to entry for another user to work with. That said, it's not in the main code, so that's not a serious concern. If that complication is necessary, it's nice that you're using less common YAML constructs to employ reuse and avoid repetition.

I wonder how much value we get from running the tests on all Python versions on macOS (for each push/PR). I'd be content with just Python latest and (maybe) Python 2.7 or macOS to capture possible nuances with Mac, but otherwise rely on Linux for the full suite of supported versions. But you've done the hard work of getting the matrix running, so it's probably reasonable to keep it. I don't think cheroot will see so much action that the extra load on Travis is a concern.

Thanks!

.travis.yml Outdated
- PYTHON_VERSION=pypy2-5.7.1
- *env_pyenv
- *env_path
# Fails under OS X:

This comment has been minimized.

@jaraco

jaraco Apr 29, 2017

Member

I generally try to avoid commented code. I suggest either marking this test as an allowed failure (if you intend for it to work in the near future) or just remove it (and let the source code history remember it in case we choose to revive it).

@jaraco

This comment has been minimized.

Member

jaraco commented Apr 29, 2017

When you merge this PR, please also cut a new release. Thanks.

@webknjaz

This comment has been minimized.

Member

webknjaz commented Apr 29, 2017

Actually I was worried about the feedback time period from CI: it largely increases waiting time of "Okay, tests are green" or "Oops.. Smth is wrong with your changes in specific env". That's my primary motivation of asking about leaving just a few OS X tests.

Regarding "the latest 2.7" (etc.) I've tried that, but pyenv has it just for a few envs, so I wanted to be consistent across config, given that I follow declarative manner of specifying versions (although I could actually script version lookup and match via pyenv install --list).

@webknjaz webknjaz merged commit ef8b31b into master May 2, 2017

0 of 4 checks passed

continuous-integration/appveyor/branch Waiting for AppVeyor build to complete
Details
continuous-integration/appveyor/pr Waiting for AppVeyor build to complete
Details
continuous-integration/travis-ci/pr The Travis CI build is in progress
Details
continuous-integration/travis-ci/push The Travis CI build is in progress
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment