dotnet / dotnet/arcade

Should arcade be invoking chmod on a checked in file?

Open
#12,957 5 comments 0 reactions 0 assignees View on GitHub
up-for-grabs
Dominant language
C#
Stars
729
Forks
397
Avg merge
3d 15m
Merged PRs (30d)
149

Description

I'm trying to setup a .devcontainer for a new repo that uses arcade in order to onboard to GitHub Codespaces. While doing so using VS Code Dev Container tooling, I'm hitting a permission error during the prebuild given that arcade is trying to invoke `chmod` command on the checked-in script `eng\common\dotnet-install.sh` before it invokes it. That happens on this line:

https://github.com/dotnet/arcade/blob/1177b37e60c7271ab461098aefbdd03edc15b90d/src/Microsoft.DotNet.Arcade.Sdk/tools/InstallDotNetCore.targets#L12-L13

The error is most likely because of the limited permissions that the user that VSCode uses has, so it can't perform chmod, but I'm actually curious as to why would arcade even have to do this to begin with. Given this is a checked in file, this shouldn't be a problem as git should be used in the first place to ensure the file is added with the right index and permissions so it can be executed and this command be avoided. That said, I'm not very familiar to what this targets file is used for so I would like to understand what it is trying to do. I did a quick blame on the file and looks like those lines where added by @natemcmaster 4 years ago, so I'm wondering if they are still needed.

cc: @eerhardt

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.