-
Notifications
You must be signed in to change notification settings - Fork 482
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
Update actions for release #606
Conversation
Codecov ReportPatch coverage has no change and project coverage change:
Additional details and impacted files@@ Coverage Diff @@
## main #606 +/- ##
==========================================
+ Coverage 79.66% 79.70% +0.04%
==========================================
Files 79 79
Lines 4819 4819
==========================================
+ Hits 3839 3841 +2
+ Misses 980 978 -2 ☔ View full report in Codecov by Sentry. |
slack-notify: | ||
needs: [test-nodevdeps, test-devdeps] | ||
runs-on: ubuntu-latest | ||
# https://stackoverflow.com/questions/71430668/how-to-run-a-github-actions-job-on-workflow-failure | ||
if: ${{ always() && contains(needs.*.result, 'failure') }} | ||
steps: | ||
- name: Send GitHub Action trigger data to Slack workflow | ||
uses: slackapi/[email protected] | ||
env: | ||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} |
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.
(suggestion, non-blocking) Would you be open to considering the slack github bot integration? That way, we won't need to maintain two integration APIs: we can use slack bot to notify us of new issues and PRs, as well as use it as an alert triggered by CI pipelines.
The advantage for CI: the notification destination (i.e. slack channel) is defined in the CI job instead of slack admin panel.
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.
Hey Nick! Thanks for the adjustment. I left a non-blocking suggestion.
Also, WDYT about adjusting the release job as a followup? For example, we could remove the "draft" configuration and add the release notes. In addition, we may consider adding the job to publish to pypi to streamline the release process.
A non-blocking comment to the quote above: even if a test is slow, we shall not omit it for the sake of quality in order to guarantee that the software works corss-OS and corss-versions - just the way we advertise. WDYT? |
Yes, very poor wording on my part. Thanks! |
Description
This PR adds two new actions related to our release process.
test-deps.yml
checks whether any new release of packages that we depend on will break our package.release.yaml
builds a wheel and then installs the wheel and checks that imports and CLI are working correctly.More details:
test-deps.yml
does a fresh install with the latest version of all our (i) core dependencies and (ii) developer dependencies, and then checks that imports, CLI and tests all work correctly. This is currently a nightly cron job as it takes a while forpip
to resolve and install the latest version of our dependencies. Failures will be sent to Slack.release.yaml
builds our package, and then installs it and checks that CLI and imports are working correctly. It only does this for CPython 3.10 and one platform (Ubuntu) because it will make the action very slow otherwise (but this can be changed)Related Issues
#607
Checklist
N/A
Additional Notes or Comments
This is still quite rough. Improvements are very weclome!
This requires an admin to create a secret with a Slack webhook URL. Please contact me for details.