-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Automate pypi deployment #919
Conversation
c39ad40
to
7303ba7
Compare
4845c3f
to
6036921
Compare
Github action for automating deployments and versioning of the dspy-ai package on PyPI. Checklist for use included at docs/docs/release-checklist.md Overview of the workflow:
|
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.
Great job! Thank you for your time and contribution!
Overall, this looks good to me, but here are a few suggestions:
- It would be helpful to have a document explaining how we are building this. Including this document in the PR should be sufficient. While I have a general understanding of how it works currently, a short document connecting the dots would make it much easier to understand.
- I've added a few comments which may help in cleaning up, but they aren't necessary.
- Instead of copying the intro.py into the file, it might be better to move it to pytest and run it from there.
build_utils/tests/intro.py
Outdated
@@ -0,0 +1,223 @@ | |||
### | |||
# Copy of intro notebook for the sake of testing new versions of the package. |
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 would say let's move this to a pytest and run that test case instead of running the actual intro.py file. what do you think?
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.
Yes that's a good call, I'll do that. Shall I put it under tests/examples?
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 would say that would be a great place to put or we can move all of these tests to a new folder name tests/integration
and keep them there, this way we can distinct it later to run them or not to run them where ever we want.
I think it is good to separate these integration and maybe later we want to run them in their own CI step.
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 can help with setting up this one for you, it will be a little bit tricky, I will push it in another branch and add it to CI for you in couple days.
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 added my initial commits here.
python-version: "3.9" | ||
- name: Install package from TestPyPI | ||
run: | | ||
for i in {1..5}; do |
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.
for keeping this file clean do you wanna move this to the .sh file?
-> Shall I expand what I've mentioned here or is that enough detail? I also included a
|
@hmoazam I think that's a good draft but i would say
All in all, great job! Let's tweak it a little bit and merge it as soon as we can. |
eb01fe1
to
3103066
Compare
d01378d
to
5af03b7
Compare
…o test-pypi and integration test to validate the release.
6b47551
to
2c0305a
Compare
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! Thanks for the hard work here @hmoazam 🚀🥳
WIP for automatically publishing package to pypi and creating github release. Testpypi automation in place for package at: https://test.pypi.org/project/dspy-ai-test/