-
-
Notifications
You must be signed in to change notification settings - Fork 523
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
ci-cygwin*.yml: delegate to tox, add more stages, use more specific SAGE_LOCAL #31064
Comments
This comment has been minimized.
This comment has been minimized.
Commit: |
Last 10 new commits:
|
Author: Matthias Koeppe |
Work Issues: SAGE_LOCAL |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Changed work issues from SAGE_LOCAL to none |
Work Issues: update extract-sage-local.sh |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:36
Replying to @tobiasdiez:
I'm pretty sure I went through several iterations, including use of the shell directive, before settling on something that actually works |
comment:37
Replying to @tobiasdiez:
This has not been a problem in my experience. |
comment:38
Let me explain again why I like to use The present ticket consolidates GH Actions-specific code for installing Cygwin to just become part of the tox workflow. It is not enough to just factor through scripts that "could" also be run by developers on a local Windows machine: We currently do not even have any developers who do that. By using tox inside the GH Actions workflow, we actually make sure that these scripts are usable (and remain usable when changes are made) outside of a GH Actions environment. |
comment:39
Replying to @tobiasdiez:
This is used in I don't think the setup-python action can do that. |
comment:40
Thanks for the explanation. That's indeed something I understand and appreciate. My only problem is that managing the user system locally using tox is not very handy in my experience. Here is an example I was experiencing the last few hours: I think it is good to have an easy way for developers to investigate problems in the GH workflow on their local system. And for this, it is in my opinion crucial that they can quickly recreate the state that is used. In my opinion a clearer separation in system-setup, build and test is helpful in this regard. If this can be done using tox, sure why not. |
comment:41
Replying to @tobiasdiez:
Right. Managing the global installation of Cygwin is not the final form of this development. What I would actually prefer (but have not had time to figure out -- any help is welcome) is to have the |
comment:42
Replying to @tobiasdiez:
OK, I have run into this situation too. I think what is needed for the
I will open a ticket for this. |
comment:43
That would also work, thanks! Please also give a thought to my suggestion to extract some of the scripts in tox.ini to scripts that can be called independently of tox. |
comment:44
This is now #31216 |
comment:46
Replying to @tobiasdiez:
I see two directions of improvement here:
On the other hand, I would be reluctant to add more scripts that developers can use to set up their system automatically. As I have written elsewhere, I think the current approach of printing command lines to educate developers about how to do things on their system is better for the Sage community than trying to provide scripts that do things automagically. |
comment:47
Replying to @mkoeppe:
Sounds good to me! Sorry for starting this somewhat off-topic discussion, but I very much appreciate your detailed explanations. It's always good to learn more about sage's inner workings ;-). I'll review this ticket as soon as the dependencies are merged (as it's hard to see right now which changes are coming from this ticket). |
comment:48
Great, and thanks for the discussion. |
Changed reviewer from https://github.com/mkoeppe/sage/actions/runs/434342215 to Dima Pasechnik |
comment:49
lgtm |
comment:50
Thank you! |
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
|
Changed branch from u/mkoeppe/ci_cygwin__yml__adjust_to_new_script_packages__bootstrap___prereq to |
We revise the CI workflows for Cygwin, now going through
SAGE_ROOT/tox.ini
for the package installation and invoking the new system package scripts from there.We also add more stages to make the workflow more robust; this was originally done in #29152.
We also make another improvement that was easy to do:
The build now uses
SAGE_LOCAL=/opt/sage-$COMMIT
instead of/sage/local
.This will make it easier to download and install several versions of Sage.
Depends on #29124
Depends on #30944
Depends on #31062
Depends on #31084
CC: @seblabbe @kliem @antonio-rojas @embray @slel
Component: porting: Cygwin
Author: Matthias Koeppe
Branch/Commit:
42f4458
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/31064
The text was updated successfully, but these errors were encountered: