-
Notifications
You must be signed in to change notification settings - Fork 204
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
Dev containers #1228
Dev containers #1228
Conversation
…ets-earth#1134) * fix issue of adding H2 store and make H2 Store in AC buses * add release notes * Add H2 Stores to both AC and DC buses
updates: - [github.com/pre-commit/pre-commit-hooks: v4.6.0 → v5.0.0](pre-commit/pre-commit-hooks@v4.6.0...v5.0.0) - [github.com/psf/black: 24.8.0 → 24.10.0](psf/black@24.8.0...24.10.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…#1135) * enable configfile for mock_snakemake * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Add release notes * drop else condition --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
huge shoutout to @GbotemiB for his contributions |
Thank you so much @lkstrp for supporting it!! Having a container image will be a fantastic improvement. Adding some thoughts, feel free to comment and disagree 😄
With a question on the naming, you risk to open Pandora box 😄 My understanding is that the current approach is intended for usage rather by data scientists/modellers who are relatively comfortable with containers, but are not particularly keen to go trough seven circles of pythonic dependency management 🙃 Though, |
Btw, in puncto dependencies management: @lkstrp haven't you noticed any troubles related to pip-dependencies when generating pinned environments? I have an impression that there may be some troubles in how conda interact with pip which regularly sometimes lead to the need for manual interventions. Would be actually great to find a way to make the automated workflow work automatically 😄 Any hints on that would be highly appreciated! |
Naa, no data, just source code. The dev envs do not even contain that at the moment. Source code and possibly a GUI at some point, so you could run a full fletched app with a single command.
Not so far, no. The main problem I have encountered is that you need OS specific pinned envs, but this is being handled. So far the pinned ones work quite well, which doesn't mean there aren't problems 😄 The other points I discussed with Akshat. |
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 PR :D
Honestly, it is a great contribution and in amazing status.
On my side, I'd have only a minor fix (the tutorial test), plus the release note.
A test on the installation of the docker could be interesting too, we can have it in a future PR in case.
@ekatef I believe you have handled it more then me; if it is fine, I leave it to you :) |
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.
Hello @drifter089 @GbotemiB, fantastic work!! My feeling is that we are close to finalise 🚀
Have added some comments which are mainly quite minor. My only major concern related to the overall architecture to manage docker infrastructure. Would it be possible to use pypsa-earth
directly to store the image and clone the repo? Obviously, we would need you support for that. May you be willing to take the lead in managing dockerisation directly in the upstream?
Generally, the contribution feels like a great usability improvement, and looking forward to merge it 😄
"name": "pypsa earth dev", | ||
"image": "ghcr.io/drifter089/pypsa-earth:latest", | ||
"workspaceMount": "source=${localWorkspaceFolder},target=/workspaces,type=bind,consistency=cached", | ||
"initializeCommand": "docker pull ghcr.io/drifter089/pypsa-earth:latest", |
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.
@drifter089 I understand that it has been crucial to test the docker workflow, and thanks a lot for making it work using your personal repo! For the stable implementation, I wonder if can we use pypsa-earth
repo. Obviously, happy to provide you with all the administrative rights to maintain the docker images. Could it work?
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.
Hi @ekatef, thank you for taking time to review. I have completed the requested changes.
Hi @ekatef, Regarding storing the image in pypsa-earth, I think @drifter089 have more idea on how to handle it and make the transmission easy. |
Thanks a lot for introducing the changes @GbotemiB! 😄 Looks great! For hosting the image, I think we can use Akshat's repo at first handling docker as an experimental feature and transition to a more stable configuration. For now, ready to merge 😄 |
Merged 🎉 We finally have a container distribution 😄 |
Closes # (if applicable).
Changes proposed in this Pull Request
Checklist
envs/environment.yaml
anddoc/requirements.txt
.config.default.yaml
andconfig.tutorial.yaml
.test/
(note tests are changing the config.tutorial.yaml)doc/configtables/*.csv
and line references are adjusted indoc/configuration.rst
anddoc/tutorial.rst
.doc/release_notes.rst
is amended in the format of previous release notes, including reference to the requested PR.