-
-
Notifications
You must be signed in to change notification settings - Fork 656
tox -e update_docker_platforms
#36954
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
tox -e update_docker_platforms
#36954
Conversation
This looks better
|
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.
Please don't commit the auto-generated devcontainer files. The would show up at https://github.com/codespaces/new?hide_repo_select=true&ref=develop&repo=597660615&skip_quickstart=true, and a drop down box should not contain more than 10-20 options to be useful. Also, if I'm not mistaken, the docs already explain how to start a devcontainer for the portability tests.
I experimented on it. The dev container files appear sorted alphabetically by their filenames, and the new dev container files (that start with "portability-") appear to the bottom of the dropdown box. Hence there is no inconvenience incurred by this PR. The conda dev container (perhaps your favorite) is still placed at the top. |
Thanks for testing, but I was already aware of the sorting and took this into account. I would be fine with adding a few common configs, but not almost hundred. |
That's right. This PR lowers the barrier further -- in particular by making these options available in the devcontainer dropdown menu on PRs.
There's no such thing, as I explained in detail in #36726. |
Not sure about this. Have you tried this in a narrow window? |
I just did. In the narrowest window (perhaps corresponding to the vertical mode of hand-held devices), the PR version looks okay. In this case, the font is too small in my version. Except this extreme case, my version shows always the four images stacked nicely and codespaces button separately on the right, which look tidy overall (even in the extreme case). |
Instead of
as this is what is done? Just a mild suggestion. |
There is, and for that system we already added a devcontainer file. |
And please move the script out of tox. There doesn't seem anything specific in there that needs tox/an isolated environment. Perhaps we should introduce a new |
Tobias, stop writing for an audience. You and I both know that you have no involvement whatsoever in maintaining the Sage distribution and the associated portability work. Such declarations from you about this effort just have no value in this discussion. |
Nope, that's where it belongs, it's the central place where the different system configurations are defined. |
That's one thing that it does, but it also updates the file |
I see. Then this
is responsible for defining all linux platforms that our CI machine works on and thus sage officially supports. Right? Then it seems that this important list is buried deep in |
That's a good idea. I'll work on that |
OK for me. Thanks. |
Please stop these ad hominem attacks against reviewers. Moreover, it is surely against our code of conduct to try to limit the discussion of certain topics to a subgroup of the community (and even more so if a single person decides who is in that subgroup, or if it is based on who contributed to a certain part of the project before). (Finally, I did actually have quite a few commits changing things in the sage-the-distro folders |
Done in e663e2d |
Looking at the rendered table with 3 columns, it seems that the codespaces button occupies too much space, and we still have a room for the column for "system packages". Thus I still prefer the 4 column format as suggested above. But I won't insist, as this seems to be a personal preference. By the way, here and here there are broken links. Could they be fixed? |
I've adjusted the column width and another detail, please take a look. |
The one for conda was systematic, I'm suppressing this row now. The other one must have been some query rate limit in the badge generation service; this should go away if you clear the cache |
Looks good to me. Thanks. |
I see no broken links now. Thanks. |
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.
… docker-in-docker
… github-cli as dev container features
Documentation preview for this PR (built with commit aa7dab3; changes) is ready! 🎉 |
Enough lingering here. |
Thanks! |
sagemathgh-36954: `tox -e update_docker_platforms` <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes sagemath#1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> Furthering my hidden agenda of bringing portability tools to the masses. - We add `.devcontainer/portability-*/devcontainer.json` files for all platforms tested in our CI. This makes them selectable in GitHub Codespaces. - The files are generated by the new command `tox -e update_docker_platforms`, which also updates the workflow file `.github/workflows/docker.yml`. - The command also [adds a table to the portability testing section in the developer's guide](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#using-our- pre-built-docker-images-published-on-ghcr-io) with links to GitHub Packages and friendly "Run in GitHub Codespaces" buttons. - Because 'tis the season of Spielzeugneid, [we document how to run the portability testing in GitHub Codespaces via Docker-in- Docker](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#testing-sage- on-a-different-platform-using-docker), useful for those who cannot run Docker on their own computers. This uses a new devcontainer config "tox- docker-in-docker". - We make various other updates to the portability testing section in the developer's guide. <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [x] The title is concise, informative, and self-explanatory. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#37030 (split out from here) <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#36954 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe, Tobias Diez
sagemathgh-36954: `tox -e update_docker_platforms` <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes sagemath#1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> Furthering my hidden agenda of bringing portability tools to the masses. - We add `.devcontainer/portability-*/devcontainer.json` files for all platforms tested in our CI. This makes them selectable in GitHub Codespaces. - The files are generated by the new command `tox -e update_docker_platforms`, which also updates the workflow file `.github/workflows/docker.yml`. - The command also [adds a table to the portability testing section in the developer's guide](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#using-our- pre-built-docker-images-published-on-ghcr-io) with links to GitHub Packages and friendly "Run in GitHub Codespaces" buttons. - Because 'tis the season of Spielzeugneid, [we document how to run the portability testing in GitHub Codespaces via Docker-in- Docker](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#testing-sage- on-a-different-platform-using-docker), useful for those who cannot run Docker on their own computers. This uses a new devcontainer config "tox- docker-in-docker". - We make various other updates to the portability testing section in the developer's guide. <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [x] The title is concise, informative, and self-explanatory. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#37030 (split out from here) <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#36954 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe, Tobias Diez
sagemathgh-36954: `tox -e update_docker_platforms` <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes sagemath#1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> Furthering my hidden agenda of bringing portability tools to the masses. - We add `.devcontainer/portability-*/devcontainer.json` files for all platforms tested in our CI. This makes them selectable in GitHub Codespaces. - The files are generated by the new command `tox -e update_docker_platforms`, which also updates the workflow file `.github/workflows/docker.yml`. - The command also [adds a table to the portability testing section in the developer's guide](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#using-our- pre-built-docker-images-published-on-ghcr-io) with links to GitHub Packages and friendly "Run in GitHub Codespaces" buttons. - Because 'tis the season of Spielzeugneid, [we document how to run the portability testing in GitHub Codespaces via Docker-in- Docker](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#testing-sage- on-a-different-platform-using-docker), useful for those who cannot run Docker on their own computers. This uses a new devcontainer config "tox- docker-in-docker". - We make various other updates to the portability testing section in the developer's guide. <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [x] The title is concise, informative, and self-explanatory. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#37030 (split out from here) <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#36954 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe, Tobias Diez
sagemathgh-36954: `tox -e update_docker_platforms` <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes sagemath#1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> Furthering my hidden agenda of bringing portability tools to the masses. - We add `.devcontainer/portability-*/devcontainer.json` files for all platforms tested in our CI. This makes them selectable in GitHub Codespaces. - The files are generated by the new command `tox -e update_docker_platforms`, which also updates the workflow file `.github/workflows/docker.yml`. - The command also [adds a table to the portability testing section in the developer's guide](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#using-our- pre-built-docker-images-published-on-ghcr-io) with links to GitHub Packages and friendly "Run in GitHub Codespaces" buttons. - Because 'tis the season of Spielzeugneid, [we document how to run the portability testing in GitHub Codespaces via Docker-in- Docker](https://deploy-preview-36954-- sagemath.netlify.app/html/en/developer/portability_testing#testing-sage- on-a-different-platform-using-docker), useful for those who cannot run Docker on their own computers. This uses a new devcontainer config "tox- docker-in-docker". - We make various other updates to the portability testing section in the developer's guide. <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> <!-- Feel free to remove irrelevant items. --> - [x] The title is concise, informative, and self-explanatory. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#37030 (split out from here) <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#36954 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe, Tobias Diez
Furthering my hidden agenda of bringing portability tools to the masses.
.devcontainer/portability-*/devcontainer.json
files for all platforms tested in our CI. This makes them selectable in GitHub Codespaces.tox -e update_docker_platforms
, which also updates the workflow file.github/workflows/docker.yml
.📝 Checklist
⌛ Dependencies