azavea / python-omgeo

OMGeocoder - A python geocoding abstraction layer
http://python-omgeo.readthedocs.io/en/latest/
MIT License
36 stars 14 forks source link

CI using GitHub Actions #64

Closed ddohler closed 3 years ago

ddohler commented 3 years ago

Overview

travis-ci.org shut down, and migrating to GitHub Actions seemed easy and is our preferred solution anyway, so this makes the switch.

Notes

~This is draft while I test (I suspect CI may fail initially because I had problems with credentials locally).~

Testing instructions

Assuming the above is completed, the following cleanup tasks also need to be done before merging:

ddohler commented 3 years ago

@azavea/operations -- I attempted to assign this to you, but it doesn't appear that GitHub supports assigning to or requesting review from teams, so I'm leaving this comment here; hopefully that's the appropriate path. Please review when you have a chance, thanks!

colekettler commented 3 years ago

Also, I think I figured out why you couldn't tag the operations team. It seems like you can only assign teams as reviewers in private repositories for the organization. I'm not totally clear on if that's due to team secrecy settings somewhere or if that's the intended default behavior.

ddohler commented 3 years ago

As I was rebasing to finish this, I discovered that matrix testing seems to cause the US Census geocoder to become unstable in some way that makes it unlikely that all three version tests succeed on any given run. A single Python version has a much higher chance of success, so rather than disable the US Census tests, I opted to reduce the testing matrix down to just Python 3.8. My reasoning is that this is an old library that doesn't do anything fancy syntax-wise, so the primary thing we need to be concerned about with testing different versions is probably the possibility of older constructs being deprecated in newer Python versions, so it made sense to focus on the newest version available. I also opened an issue to see if we can figure out a way to still run a multiple-version test successfully. https://github.com/azavea/python-omgeo/issues/66