-
Notifications
You must be signed in to change notification settings - Fork 5
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
ibek develop and permissions #142
Comments
For the purpose of working on screens only (which only updates ibek-support) I have over-complicated things because having added new However, the above still stands if you want to make changes to a support module and compile it. |
This isn't entirely relevant, but do we have to assume where the developer's editable mount is, or could it be part of the devcontainer config? For example, for a while I have mounted things at I think the answer is probably yes we do have to assume where they will be, but it would be nice to not be opinionated and let the developer have some control over this. |
Ah, you mention some of the difficulties around this in #134 ... |
I am currently a fan of /repos because:
Despite all these things, there is a conflict of interest when it comes to publishing |
in fact I think I need to re-ephasize point 3. above.
When you make a choice about where your extra projects sit in your host file system and you want to use them inside the dev-container you are required to:
Conversely |
Yeah I think these are all good reasons and it is important to make it as easy as possible to be able to work with each others projects. I think I don't find |
Explicit mount in devcontainer had the benefit of flagging a change in git. Is there a similar change if we mount in all of repost? |
If you |
@coretl what @GDYendell said. I'm using generic IOC devcontainers all the time now and just add what I want from |
I mean how do we remember that we're "running from work". If you have to edit .devcontainer then you dirty the repo, which is a good reminder. Do we get the same with /repos? Do we care? |
how abou |
Ah. I wasn't thinking so much about knowing that we are running from work as I was that the changes are saved on the host file system if you do forget. I am not sure at what point in the development cycle it would become apparent that you are relying on local changes to a support module and need to push them somewhere. I guess the generic ioc build will fail in CI? Is that late enough that it would be annoying or is that fine? |
We have a solution for this.
Thus a pushed 'work' version would fail an tell you its looking for the support module in (assumes I have changes /repos to /workspace which is clearly a good thing to do - I wanted to dissociate from the vscode default but on reflection that is pointless and a bad idea) |
Ok, this is probably fine then |
I believe this has been resolved with change to /workspaces for peer folders and additional work to set ownership when using docker. |
Working with docker you do not have permission to write to /epics as its make by root and you are 'vscode'.
This is kind of nice as it gives us the 'prod' view of support modules built in the container.
When attempting to manually do a
ibek support develop
(as yet not implemented) in order to work on adding new PVI definitions I did this.Now I want to do
/epics/ioc-adaravis/ibek-support/ADCore/install
after generating some new PVI defs in /epics/ioc-adaravis/ibek-support/ADCore`.However there are still the following problems:
All the above were fixed with some chmods but the apt install one required an edit to
install.sh
.simply running install.sh under sudo seems like the easiest option but root would then need the venv activated (or the python in its path to be precise).
This is just some notes to remind me what
ibek support develop
might need to do. Also note that once we implement read-only 'prod' in the container some of this will also affect podman.TODO: make up a nice tidy way of dealing with all this fiddlyness.
The text was updated successfully, but these errors were encountered: