Fix wwctl chmod arg parsing.
This commit is contained in:
21
internal/app/wwctl/overlay/chmod/chmod_test.go
Normal file
21
internal/app/wwctl/overlay/chmod/chmod_test.go
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
package chmod
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
// TestArgsOverlayChmod is a regression test for 260.
|
||||||
|
// Two arguments should fail, three should succeed.
|
||||||
|
func TestArgsOverlayChmod(t *testing.T) {
|
||||||
|
command := GetCommand()
|
||||||
|
|
||||||
|
err := command.Args(command, []string{"overlay_name", "file_name"})
|
||||||
|
if err == nil {
|
||||||
|
t.Errorf("two arguments to overlay chmod should fail")
|
||||||
|
}
|
||||||
|
|
||||||
|
err = command.Args(command, []string{"overlay_name", "file_name", "0755"})
|
||||||
|
if err != nil {
|
||||||
|
t.Errorf("three arguments to overlay chmod should succeed")
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -17,7 +17,7 @@ func CobraRunE(cmd *cobra.Command, args []string) error {
|
|||||||
overlayName := args[0]
|
overlayName := args[0]
|
||||||
fileName := args[1]
|
fileName := args[1]
|
||||||
|
|
||||||
permissionMode, err := strconv.ParseInt(args[3], 8, 32)
|
permissionMode, err := strconv.ParseUint(args[2], 8, 32)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
wwlog.Printf(wwlog.ERROR, "Could not convert requested mode: %s\n", err)
|
wwlog.Printf(wwlog.ERROR, "Could not convert requested mode: %s\n", err)
|
||||||
os.Exit(1)
|
os.Exit(1)
|
||||||
|
|||||||
Reference in New Issue
Block a user