-
Notifications
You must be signed in to change notification settings - Fork 21
Add workflow for nightly packaging #3290
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
1d6af67 to
5a00b16
Compare
| workflow_dispatch: | ||
| push: | ||
| paths: | ||
| - '.github/workflows/release-nightly.yml' |
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.
Having gone through this for the weekly build, I think we should not trigger the workflow like this. It would lead to the tag being overwritten and packages being build several times during one day. A manual trigger should be enough. Just like we test real releases by manually triggering 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.
Isn't this a one-time issue, for the few in-flight PRs that decided to merge main? I think manually testing a workflow is easily forgotten?
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.
Don't know. Or does it happen every time the file gets updated?
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, every time it gets updated.
| # predictable URL of the uploaded release asset that downstream projects can use. | ||
| pkg, _, remainder = filename.split('-', 2) | ||
| target = f'{pkg}-nightly-{remainder}' | ||
| os.rename(filename, target) |
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.
Is the remainder needed? Or can we have a simple name like scipp.whl?
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 it will be needed if we ever decide to test on different versions/platforms, which we might not want, but there is no guarantee that we can always support the same minimum Python across projects. For example, it seems @jokasimr just changed the essreflectometry minimum to 3.10?
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 change it back to 3.8 if that is better.
I changed it because I thought there was an issue when I ran it with 3.8, but found out later that was not the case.
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.
You can revert if you like (I don't know what users depend on), but in principle, this is fine, we just need to make multiple versions here, but extending the matrix is trivial.
This builds a wheel (currently only py38) and uses an action to attach it as a release asset. Note that we always use the same tag,
nightly, without moving it. Setting that up would be more work, but I can't think of any benefit right now?