Conversation
|
Also each example uses concurrency groups to cancel duplicative workflows. |
|
Whoops I just noticed that I accidentally deleted stuff in my branch, I will amend the PR to not delete the original files. |
|
The copilot review made me realize that I need to change the optional deps part of my projects, and sync the project with |
Sounds good. |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
cffef7a to
84d4084
Compare
In response to copilot code review
84d4084 to
872f953
Compare
872f953 to
8702eca
Compare
8702eca to
bc5d9b6
Compare
bc5d9b6 to
294b6f1
Compare
There was a problem hiding this comment.
Pull Request Overview
This PR introduces three reusable GitHub Actions workflows for UV-based Python projects, along with supporting configuration and documentation. The workflows provide automated CI/CD capabilities including testing, version bumping, and publishing.
- Adds three reusable workflows:
ci-uv.ymlfor linting/testing,bump-version.ymlfor automated versioning, andpublish.ymlfor release creation and PyPI publishing - Provides example calling workflows demonstrating proper usage patterns with conditional triggering
- Updates documentation with workflow requirements and conventional commit guidelines
Reviewed Changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/ci-uv.yml |
Reusable CI workflow with UV package manager, linting, testing, and wheel smoke testing |
.github/workflows/bump-version.yml |
Automated version bumping using commitizen based on conventional commits |
.github/workflows/publish.yml |
Release creation and optional PyPI publishing workflow |
examples/ci-call.yml |
Example CI workflow with conditional execution logic |
examples/bump-call.yml |
Example version bump workflow triggered by CI completion |
examples/publish-call.yml |
Example publish workflow for tag-based releases |
.github/dependabot.yml |
Dependabot configuration for GitHub Actions updates |
README.md |
Updated documentation with workflow requirements and conventional commit guidelines |
f3e93b6 to
d4d1815
Compare
|
This works with all of the changes I made based on copilot's reviews. I just tested all of the workflows in https://github.com/AllenNeuralDynamics/aind-mri-utils |
d4d1815 to
f36fa67
Compare
An out-of-date lockfile should error
f36fa67 to
06c84a8
Compare
jtyoung84
left a comment
There was a problem hiding this comment.
Looks good. Thanks for the contribution.
This creates three reusable workflows that perform
ci-uv.ymlbump-version.ymlpublish.ymlFor these to be used by other repositories, they must be in the
.github/workflowsdirectory, as is stated in the reusable workflow documentation. However, they should not run on this repo, because reusable workflows must be trigerred onworkflow_call—notpush,pull, or the like.I have also added example workflows in the
examples/folder that consume each of these reusable workflows, with conditional triggering in a way that I think makes sense:CIworkflow completed successfully onmain, or manually. Skip if the commit message started with "bump:"I have updated the README accordingly. Projects must be configured to use
uvand have the listed dependencies to useci-uv.yml.I think at some point
ci.ymlshould be replaced by theci-uv.ymlin this PR, possbily with some changes. The currentci.ymlis not callable, as far as I can tell.