-
Notifications
You must be signed in to change notification settings - Fork 18
[MRG] Creates nightly builds for Python >= 3.6 on all platforms #17
Conversation
This PR has been updated to only build for 3.6/3.7 on osx, linux, windows(64 bit). This is a total of 6 daily builds. |
I would rather just finish the review of the new K-Means implementation ( scikit-learn/scikit-learn#11950 ) which I believe would fix this unstable test on macOS. @jeremiedbb let me know if I am wrong. |
I do think it fixes the test. However, originally I made this test in this PR and then moved it in a separate PR to ease reviews. So it would not be absurd to remove this test from master and put it back in my PR. |
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.
LGTM besides the following comments:
thanks for doing all of these in parallel @thomasjpfan. Do you think if we move to microsoft CI, we should also move these to that CI? |
@adrinjalali It is possible to move our build to azure. We would need to adapt https://github.com/matthew-brett/multibuild to run on azure. For now, I think it is best to keep this running on Travis and AppVeyor. |
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.
The container name should be updated in the appveyor configuration.
BTW I have created the sklearn-nightly
container on rackspace files and added a CNAME entry so that its content should be available under http://nightly.scikit-learn.org/ at some point (it does not seem to work yet). I don't know how to get https for this though.
Co-Authored-By: thomasjpfan <[email protected]>
The owner of this web site has set X-Container-Meta-Web-Index: index.html. However, this file is not found. @ogrisel is that what you saw? Looks like it requires some config on the server, not just the cname. |
# Maybe get and clean and patch source | ||
- clean_code $REPO_DIR $BUILD_COMMIT | ||
- build_wheel $REPO_DIR $PLAT | ||
# Maybe get and clean and patch source |
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.
patch? for the wheel building?
Ah, wheelhouse_uploader creates the index, so all is good, never mind. |
enabled for travis, no idea how to do it for appveyor, maybe need to log in with the appveyor admin account? |
@ogrisel The first windows build has been uploaded here: http://68bea3902784d69c0aa8-ef5ddc96fef712c596c71d053dc2ad71.r77.cf2.rackcdn.com The rest of the builds say they are uploaded to the same location. The index file has not been updated on the CDN because the TTL was set to 3 days. You can set this to 15 minutes by: We can set the TTL to one hour after we confirm that everything works. |
I changed the TTL, deleted the old sklearn-nightly container that I created in the North Virginia datacenter (IAD) instead of Chicago (ORD), and updated the CNAME record for http://nightly.scikit-learn.org/ and it seems to work now. |
Great work on making nightly wheels available! |
I checked an unfortunately it's not possible to configure HTTPS on CNAME entries that point to rackspace cloud files / CDN. |
I tried: pip install --pre -f http://nightly.scikit-learn.org scikit-learn and it works (with a warning). |
@ogrisel the https is a rackspace issue? Should we look into finding an alternative? Or replace the issue on the sklearn issue tracker with one that asks for https hosting? |
The fact that we cannot setup https for CNAME -based URLs (e.g. nightly.scikit-learn.org in our case) is a limitation of rackspace CDN. If we use the raw CDN URL, it should work with HTTPS but apparently the certificate is not valid:
so indeed we could try to find an alternative solution... |
The $0.10/GB is the standard CDN charge, for the first 10TB, so we should be able to turn on https without much more fees: https://support.rackspace.com/how-to/rackspace-cdn-secure-delivery-options/ (Using the SAN certificate) (There is an additional $0.010 per 10,000 requests for HTTPS) |
Resolves scikit-learn/scikit-learn#9485
Adds a
DAILY_BUILD=true
to enable daily builds for a given platform/python version.Tested on appveyor: https://ci.appveyor.com/project/ThomasJFan/scikit-learn-wheels/builds/22442817
Tested on travis ci: https://travis-ci.com/thomasjpfan/scikit-learn-wheels/builds/101248758
The build that fails is the osx build which is being worked on here: test_k_means_fit_predict failing on some MacPython runs scikit-learn/scikit-learn#12644
This was verified to work on a Rackspace Cloud container.
To enable daily builds, it has to be enabled with travis-ci's cron-job and appveyor's scheduled builds.