Skip to content
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

Extensible snapshots: git repos not shared by snapshot #3551

Closed
dbaynard opened this issue Nov 4, 2017 · 2 comments

Comments

Projects
3 participants
@dbaynard
Copy link
Contributor

commented Nov 4, 2017

Following from @mgsloan in #3431 I can confirm that git repos are not being shared by projects on the same machine using the same snapshot. Opening a new issue as suggested, though this relates to #3535 and #3330 too.

To reproduce; using any snapshot containing git repos,

  1. Build any project using that snapshot. The git repos will be stored in the local .stack-work directory.
  2. Build any other project using that snapshot. The git repos will be re-downloaded, and stored in that local .stack-work directory.

Alternatively,

  1. Install a package using the global-project where the global stack.yaml refers to that snapshot. The git repos will be stored in the global-project's .stack-work directory.
  2. Build a project using the same snapshot. The git repos in that project's stack.yaml will be downloaded; then all the repos from the snapshot will be re-downloaded. All will be stored in the local .stack-work directory.

I would expect that snapshot git repos would be downloaded in the global snapshot directory, once per snapshot.

My workaround involves manually linking the .stack-work/download directory of the project to that of the global-project; this is potentially problematic, as that means all git repos are downloaded there (and so two projects using different commits from the same repo will be incompatible) though I haven't run in to this issue.

Furthermore, it may also be desirable to download the stack.yaml extra-deps repos to a global directory and then check them out using 'git worktree' if available.

@mgsloan mgsloan added the type: bug label Nov 6, 2017

@mgsloan mgsloan added this to the P1: Must milestone Nov 6, 2017

@mgsloan mgsloan added type: enhancement and removed type: bug labels Nov 6, 2017

@mgsloan

This comment has been minimized.

Copy link
Collaborator

commented Nov 6, 2017

Thanks for looking into it! Interesting workaround too

@snoyberg

This comment has been minimized.

Copy link
Contributor

commented Aug 22, 2018

Forgot to comment: this is already solved on the pantry branch, and I'm going to be opening up a PR to merge that code to master shortly.

@snoyberg snoyberg moved this from To do to Not merged in Pantry Aug 22, 2018

@snoyberg snoyberg closed this in 94600af Aug 26, 2018

Pantry automation moved this from Not merged to Done Aug 26, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.