diff --git a/pkg/configfilearg/defaultparser_test.go b/pkg/configfilearg/defaultparser_test.go index afb270a6a0..67abccb451 100644 --- a/pkg/configfilearg/defaultparser_test.go +++ b/pkg/configfilearg/defaultparser_test.go @@ -29,7 +29,7 @@ func Test_UnitMustParse(t *testing.T) { args: []string{"k3s", "server", "--write-kubeconfig-mode 644"}, config: "./testdata/defaultdata.yaml", want: []string{"k3s", "server", "--token=12345", "--node-label=DEAFBEEF", - "--etcd-s3=true", "--etcd-s3-bucket=my-backup", "--write-kubeconfig-mode 644"}, + "--etcd-s3=true", "--etcd-s3-bucket=my-backup", "--kubelet-arg=max-pods=999", "--write-kubeconfig-mode 644"}, }, { name: "Basic etcd-snapshot", @@ -60,7 +60,7 @@ func Test_UnitMustParse(t *testing.T) { args: []string{"k3s", "agent"}, config: "./testdata/defaultdata.yaml", want: []string{"k3s", "agent", "--token=12345", "--node-label=DEAFBEEF", - "--etcd-s3=true", "--etcd-s3-bucket=my-backup", "--notaflag=true"}, + "--etcd-s3=true", "--etcd-s3-bucket=my-backup", "--notaflag=true", "--kubelet-arg=max-pods=999"}, }, } for _, tt := range tests { diff --git a/pkg/configfilearg/parser.go b/pkg/configfilearg/parser.go index 50377be9c3..15e85b4c43 100644 --- a/pkg/configfilearg/parser.go +++ b/pkg/configfilearg/parser.go @@ -78,7 +78,7 @@ func (p *Parser) stripInvalidFlags(command string, args []string) ([]string, err } } - re, err := regexp.Compile("^-+(.+)=") + re, err := regexp.Compile("^-+([^=]*)=") if err != nil { return args, err } diff --git a/pkg/configfilearg/testdata/defaultdata.yaml b/pkg/configfilearg/testdata/defaultdata.yaml index 18c068740f..b17dcce210 100644 --- a/pkg/configfilearg/testdata/defaultdata.yaml +++ b/pkg/configfilearg/testdata/defaultdata.yaml @@ -2,4 +2,5 @@ token: 12345 node-label: DEAFBEEF etcd-s3: true etcd-s3-bucket: my-backup -notaflag : true \ No newline at end of file +notaflag : true +kubelet-arg: "max-pods=999" \ No newline at end of file