fix: use mount only for non-root users
Some checks failed
Create Release / changelog (push) Failing after 2m0s

This commit is contained in:
2025-05-30 19:41:17 +03:00
parent 09dba577c6
commit c51caf5c52

View File

@ -64,20 +64,25 @@ func BuildCmd() *cli.Command {
},
},
Action: func(c *cli.Context) error {
if err := utils.EnuseIsPrivilegedGroupMember(); err != nil {
return err
}
var err error
var wd string
if utils.IsNotRoot() {
if err := utils.EnuseIsPrivilegedGroupMember(); err != nil {
return err
}
wd, err := os.Getwd()
if err != nil {
return cliutils.FormatCliExit(gotext.Get("Error getting working directory"), err)
}
wd, err = os.Getwd()
if err != nil {
return cliutils.FormatCliExit(gotext.Get("Error getting working directory"), err)
}
wd, wdCleanup, err := Mount(wd)
if err != nil {
return err
var wdCleanup func()
wd, wdCleanup, err = Mount(wd)
if err != nil {
return err
}
defer wdCleanup()
}
defer wdCleanup()
ctx := c.Context
@ -167,12 +172,16 @@ func BuildCmd() *cli.Command {
if scriptArgs != nil {
scriptFile := filepath.Base(scriptArgs.Script)
newScriptDir, scriptDirCleanup, err := Mount(filepath.Dir(scriptArgs.Script))
if err != nil {
return err
scriptDir := filepath.Dir(scriptArgs.Script)
if utils.IsNotRoot() {
var scriptDirCleanup func()
scriptDir, scriptDirCleanup, err = Mount(scriptDir)
if err != nil {
return err
}
defer scriptDirCleanup()
}
defer scriptDirCleanup()
scriptArgs.Script = filepath.Join(newScriptDir, scriptFile)
scriptArgs.Script = filepath.Join(scriptDir, scriptFile)
}
if err := utils.ExitIfCantDropCapsToAlrUser(); err != nil {