ContinuumIO / elm

Phase I & part of Phase II of NASA SBIR - Parallel Machine Learning on Satellite Data
http://ensemble-learning-models.readthedocs.io
43 stars 27 forks source link

Package build / release cycle improvements #153

Closed PeterDSteinberg closed 7 years ago

PeterDSteinberg commented 7 years ago

Implement a package build and release system with automated builds for changes, uploads to a release candidate label or name in anaconda, and ability to simply change the label of a release candidate package when it is ready for main.

Use numba, dask, or similar project as a starting point for ideas.

PeterDSteinberg commented 7 years ago

For earthio and elm

gbrener commented 7 years ago

As of PR #160 the build/release cycle is working for elm. A new "dev" package is released to anaconda.org for each platform (linux/osx/win) upon successful build/install in a PR. The current plan for production releases is to change the package label from "dev" to "main" when we want to upgrade the release to production. In the future we may want to consider doing automated promotion via GitHub tagging + an extra round of (heavier) testing.

Time permitting I plan to reproduce these procedures for https://github.com/ContinuumIO/earthio/pull/10 for earthio.

PeterDSteinberg commented 7 years ago

@gbrener When you finish your Python 2.7 to 3.6 compatibility PR #168 , then we can close this issue. Open separate issues if you find anything we need to address later on the topics of routine CI testing, Python version flexibility, or conda.recipe issues.

gbrener commented 7 years ago

Ok, sounds great. I opened https://github.com/ContinuumIO/elm/issues/169 to itemize the last major improvements I plan to make, since they're fairly low-effort and could save us a lot of development time by tightening the testing feedback loop.