-
Notifications
You must be signed in to change notification settings - Fork 14
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
Install dev dependencies in separate environment on self-hosted runner #432
Comments
The environment is set when the runner user started, so every time the action is run in with the environment activate.
But I think to make it more clear, this source activate better to move in the action. Because we use this environment for both the |
Oh, that's definitely not good. And I think even in the same repo, each individual jobs should actually have their own environment, otherwise it's very easy for different PRs to step on each other. I don't thing this logic should live in the actions. Surely, it must be possible to provide some setup script that runs each time when a runner picks up a job? |
It would be great to put all the runner logic into some repo, otherwise it's completely invisible. |
I am quite confused about the overall logic in the self-hosted runners. Can I ask, how many runners can run concurrently? Thing I am worried about is specifically this part of
The comment says:
In this step all the containers are stopped and deleted. Given the above comment, how is it ensured that this does not interfere with a running job? |
Only one can run concurrently. The aiida-core runner and the aiidalab runner are seprated so they can run at the same time. |
@unkcpz if aiida-core and aiidalab runners can run concurrently, do they also have separate docker daemons? Because in the current workflow there is a logic that stops docker and cleans or images, containers. So I am just wondering if they are fully separate in this regard. I am not sure how docker works in multiuser environments. |
Yes, they are separated docker instance managed by
|
For the python environment, what you mentioned is correct, there is a buggy set that |
Closing for now, but this will need to be fixed if we ever go back to the self-hosted runner. |
I saw a very strange test failure in #431
https://github.com/aiidalab/aiidalab-docker-stack/actions/runs/8054045469/job/22002214446?pr=431
Pytest fails in a very peculiar way inside inside
pytest-selenium
plugin. But we do not use this plugin in the repo!!!Looking at the
.github/actions/create-dev-env/action.yml
, it seems that we're installing via pip into some global folder? This seems very bad. We should probably create a venv and install things locally. Something likepython -m venv && source .venv/bin/activate && pip install -r requirements-dev.txt
.The text was updated successfully, but these errors were encountered: