Skip to content

CI: Build, test and deploy packages #1134

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

Merged
merged 5 commits into from
Sep 7, 2022
Merged

CI: Build, test and deploy packages #1134

merged 5 commits into from
Sep 7, 2022

Conversation

effigies
Copy link
Member

@effigies effigies commented Sep 5, 2022

Taking advantage of GitHub's workflow, I'm thinking of moving from the Travis-like mono-workflow to one that builds the packages, uploads them as archives, and then runs tests in the absence of the repository. This test is not intended to replace the full matrix, but to make sure that the artifacts we're publishing are tested in isolation.

This will also ensure that builds get pushed to PyPI only after successfully testing the tagged release, removing one source of human error.

@effigies effigies force-pushed the ci/build-test-deploy branch from 30a7f5e to f1678f8 Compare September 5, 2022 00:15
@codecov
Copy link

codecov bot commented Sep 5, 2022

Codecov Report

Merging #1134 (bc8e0c7) into master (fd5c84b) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1134   +/-   ##
=======================================
  Coverage   91.80%   91.80%           
=======================================
  Files         101      101           
  Lines       12445    12445           
  Branches     2430     2430           
=======================================
  Hits        11425    11425           
  Misses        693      693           
  Partials      327      327           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@matthew-brett
Copy link
Member

Hey Chis @effigies this is just to show the at-mention Github feature.

@matthew-brett
Copy link
Member

@oesteban - could you have a look here too?

@effigies
Copy link
Member Author

effigies commented Sep 6, 2022

Hi @matthew-brett any objections?

with:
name: pytest-results-${{ matrix.os }}-${{ matrix.python-version }}
path: for_testing/test-results.xml
if: ${{ always() && matrix.check == 'test' }}

publish:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel just a little squeamish about directly pushing to PyPI on tagging, but it's really your call as release manager.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The reason that I want to do this is because with 4.0.0, there were tests that passed, then I tagged, and forgot to test on the tagged version before publishing. DeprecationWarnings mutated into ExpiredDeprecationErrors and we had a release that failed its own tests.

That said, it looks like I can create an environment that requires manual review before providing access to the PYPI token. Would that feel more comfortable?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Honesty - your call - you're doing the releases.

@effigies
Copy link
Member Author

effigies commented Sep 7, 2022

Thanks for the review.

@effigies effigies merged commit 16bdd14 into master Sep 7, 2022
@effigies effigies deleted the ci/build-test-deploy branch September 7, 2022 02:01
@effigies effigies added this to the 5.0.0 milestone Jan 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants