-
Notifications
You must be signed in to change notification settings - Fork 711
chore: adding circleci config for docs/lint #829
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
Conversation
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.
One comment, otherwise LGTM
.circleci/config.yml
Outdated
# In the cache key: | ||
# - .Environment.CIRCLE_JOB: We do separate tox environments by job name, so caching and restoring is | ||
# much faster. | ||
key: tox-cache-{{ .Environment.CIRCLE_JOB }}-{{ checksum "tox.ini" }} |
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.
I think you will also need to checksum dev-requirements.txt
and maybe other requirements files as well. I noticed there is an issue where tox won't detect updates to external requirements specified with -r
or -c
, so CI will be stuck on old versions or miss new deps. See tox-dev/tox#149.
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.
Good point, i'll take a note to add this for #828 since this current PR is really to just configure any circle ci config to remove noisy build failures
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.
Added dev-requirements.txt, we might end up wanting to rely on it a bit more heavily especially for dependencies that take a while to build like grpcio
.circleci/config.yml
Outdated
setup_tox: | ||
description: "Install tox" | ||
steps: | ||
- run: pip install -U tox virtualenv tox-factor |
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.
It seems like virtualenv
is already a tox
dependency.
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.
will fix in #828
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.
Fixed, turns out tox is also a dependency of tox-factor
executors: | ||
python38: | ||
docker: | ||
- image: circleci/python:3.8 |
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.
Does specifying the version of the image mean we won't have access to the other python versions when doing unit testing, etc?
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.
No, i'll configure different executors for each version of python we support.
.circleci/config.yml
Outdated
main: | ||
jobs: | ||
- docs | ||
- lint |
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.
Space here or is github being buggy?
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.
Not sure what you mean
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.
There's a red circle with a dash in the middle in the diff.
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.
ah i missed that, added a newline
What is the end goal of the CI going to look like? |
docs: | ||
executor: python38 | ||
steps: | ||
- checkout |
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.
What does checkout
actually do? How come we need this step if all the installations are already being done in eachdist.py
?
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.
I'm hoping to keep the changes to tox fairly minimal in the process of moving over to circleci. I would like to take advantage of the fact that we can parallelize more jobs in circleci than we have been, so i'll have to investigate breaking jobs per version/package being built. here's some experimentation i'm doing in this PR #828 to break things up into |
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.
Nice
Co-authored-by: Renovate Bot <[email protected]> Co-authored-by: Mayur Kale <[email protected]> Co-authored-by: Daniel Dyla <[email protected]>
First step towards moving away from travis and onto circleci. This doesn't take over for any travis jobs yet, but we can start migrating them over to circleci once we're confident in their results.