I've been trying to update the permissions so that I can run a command (specificially dotnet restore). I'm not sure if this issue is specific to running dotnet, or if it is more generic.
I can run the command using sudo dotnet restore, however I want to be able to run this command without sudo. This is because I want to execute these commands via a CI tool (Jenkins), and I don't want that tool to have access to root commands. . The Jenkins user is unable to run dotnet restore (because of the errors below) or sudo dotnet restore (because it doesn't have root access).
When I run without sudo, I have the following errors from dotnet restore:
/usr/share/dotnet/sdk/2.1.104/NuGet.targets(104,5): error : Access to the path '/{file_path_to_project.csproj}/obj' is denied.
[{file_path_to_project.csproj}]
/usr/share/dotnet/sdk/2.1.104/NuGet.targets(104,5): error : Permission denied [{file_path_to_project.csproj}]
I've been trying to update the read and write permissions for my user on the /usr/share/dotnet/sdk/2.1.104/NuGet.targets file, and the {file_path_to_project.csproj} directory, but so far I still get the same errors. Does it have something to do with the /obj directory? – When I run ls the obj file is not shown.
How can I update the permissions so that I can access these files without running sudo?
I created a /etc/sudoers.d/dotnet file to see if it would enable dotnet to be run without needing to call sudo. I added the following contents: {myusername} {myhostname} = (root) NOPASSWD: /usr/bin/dotnet. However, this still required me to run sudo before dotnet restore to get the correct output.