appsody / stacks

Appsody application stacks. This repo will be archived soon.
https://appsody.dev
Apache License 2.0
90 stars 120 forks source link

java-microprofile: Remove ~ mounts as Codewind now supports init outside the PFE container #363

Closed neeraj-laad closed 4 years ago

neeraj-laad commented 5 years ago

We were mounting ~/.m2 folder for appsody to work with Codewind. However, that meant we could not longer use APPSODY_DEPS and were at risk of mixing dependencies from within the container and host.

We would like to change this behaviour now as CodeWind can initialize projects outside of the container and we might not need this fix any more.

The idea would be to update this stack, and test it with updated codewind to confirm this works before we get all stacks updated and released.

Codewind team will document how to handle users who are not on latest codewind (perhaps as troubleshooting doc)

ebullient commented 5 years ago

The spring stack does use ~ mounts to share the .m2 cache, however. For Java projects, sharing the .m2 cache is typical (using DEP volumes is not). I don't think APPSODY_DEPS is appropriate for Java projects, which is why I didn't go there to begin with.

We do have the noxious issues with Windows to contend with, but I think we could handle those more gracefully by determining what ~ resolves to..

ebullient commented 5 years ago

https://github.com/eclipse/codewind/issues/583 -- related

awisniew90 commented 4 years ago

Do we have a todo for this issue? Seems that for Java projects, we are OK mounting the ~/.m2 repo since this is a typical practice. If I'm understanding the latest concern in eclipse/codewind#583, both Codewind and Appsody will be detecting changes and running maven builds, potentially colliding in ~/.m2. @ebullient, as you pointed out though, most on_change actions in appsody aren't writing back to ~/.m2. Even still, a better solution would be to have Codewind NOT detect changes and just let Appsody handle that. Is that correct? If so, can we close this issue, or is there more to do?

ebullient commented 4 years ago

One way or the other. EITHER the IDE detects changes OR Appsody does. If codewind is launching appsody, it can use a command-line option to disable the watcher, and allow the IDE to perform operations when changes are detected as it usually would.

awisniew90 commented 4 years ago

Gotcha - I think we can close this issue then. I don't believe there are any changes needed for this.