julia-actions / setup-julia

This action sets up a Julia environment for use in actions by downloading a specified version of Julia and adding it to PATH.
MIT License
93 stars 23 forks source link

[BUG] Self-hosted macOS builds only work once (?) due to permission errors for Julia <= 1.3 #105

Open SaschaMann opened 2 years ago

SaschaMann commented 2 years ago

This is mainly a placeholder/reminder issue for now.

DilumAluthge commented 2 years ago

I'm also running into this.

Instead of using the .dmg files, can we use the .tar.gz files? Would that eliminate the permission errors?

SaschaMann commented 2 years ago

Instead of using the .dmg files, can we use the .tar.gz files? Would that eliminate the permission errors?

Last time I checked they were only available for recent Julia versions unfortunately. Otherwise I'd definitely prefer them.

DilumAluthge commented 2 years ago

If I recall correctly, @staticfloat went through and uploaded macOS tarballs for all non-prerelease Julia versions >= 1.0.0. The motivation for doing so is that juliaup only supports the tarballs (it doesn't support the DMGs).

DilumAluthge commented 2 years ago

For this action, we could do either of the following:

  1. Switch to using tarballs unconditionally.
  2. Check if the tarball is available, and if so use that; otherwise fall back to the DMG.
SaschaMann commented 2 years ago

If I recall correctly, @staticfloat went through and uploaded macOS tarballs for all non-prerelease Julia versions >= 1.0.0. The motivation for doing so is that juliaup only supports the tarballs (it doesn't support the DMGs).

If that's the case, let's swap to tarballs. Way less hassle and confusion than dealing with dmg files.

DilumAluthge commented 2 years ago

I can confirm that using tarballs (#117) fixes this issue on self-hosted macOS runners.

IanButterworth commented 2 months ago

I suspect the issue with this is because setup-julia uses the toolcache, so the .dmg file is cached, and each time julia is installed it is mounted then contents copied to install dir i.e. as seen in https://github.com/julia-actions/setup-julia/pull/117/files

So I think this issue is specific to the toolcache reusing the .dmg.

(i.e. because this came up on slack in the context of juliaup moving to .dmg's, juliaup wouldn't be reusing the .dmg so shouldn't hit this permissions issue)