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
DEVREL-234, DEVREL-235, DEVREL-250: CircleCI setup, integration testing, improved dev tooling, and CODEOWNER setup #35
Conversation
Bump version Fix typo Improve version bumper Fix starting version Bump version: 0.6.0 → 0.7.0 Bump version: 0.7.0 → 0.7.1 Fix current version and add bump-patch Fix current version Bump version: 0.6.0 → 0.7.0 Fix shebang
Fix formatting Switch docker image for build Add debug Add orb More debugging List files Add checkout step Disable version verification for now Modify persist to workspace Update pip install settings Change installation dir Tweak deploy command
Save build artifact to debug Add CircleCI installer to makefile and git hook Purposefully break to test git hook Finish testing pre-commit hook Update directories Fix integration test Tweak formatting Integrate download function Prevent paginating responses that don't need it Ask for asset_children correctly Improve pagination handling Tweak integration test and pass asset correctly Fix upload path management Fix file paths again
Finish verification code Add Python 3.7 test Increase verobosity in integration test Fix python 2/3 cmp() function problem Debug python version comparison Continue to debug python versions Finished test! Add test for latest python version Add linux 3.6.5 Improve test naming Make universal package Modify asset print Attempting to debug python 2.7 Add more debugging for py 2.7 Improve debug verbosity Remove debugging for uploader Seperate py2 and py3 uploaders Remove version limitations Remove extraneous print and add cleanup task Add python version to Frame.io folder name Try again with new assets
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, I left a couple of questions.
Proposal: |
This is a good idea, I've been thinking about doing this as well. It will make deployment and CircleCI stuff much easier. |
This is a big PR that adds a lot.
The big item is CircleCI setup and testing for Python 2.7, 3.7.7, and 3.8+ (latest tag).
There is now an integration test that tests both upload and download across that version matrix and makes sure that it succeeds before allowing code to merge into the master branch.
There's also a Makefile now which includes functions for bumping the version up using semver syntax as well as tagging the version for git.
If the version tag doesn't match the version in the setup.py file then it will not pass testing (disabled for now due to issues with the
CIRCLE_TAG
environment variable).CircleCI will only run the deploy stage on the
master
branch.This also separates our upload functions for Python 2 and 3 (and adds one for python 3!), as well as fixes some small bugs in the Python 2 uploader, and improves the PaginatedResponse object logic so it only returns a PaginatedResponse when there's actually more than 1 page of results, and not just every time results could potentially be paginated.
Closes DEVREL-234, DEVREL-235, DEVREL-250.