Skip to content

Commit f585136

Browse files
authored
[Bugfix] Fix Operator Debug mode (#1208)
1 parent 01dab4a commit f585136

File tree

4 files changed

+46
-20
lines changed

4 files changed

+46
-20
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
- (Bugfix) Prevent Runtime update restarts
4242
- (Bugfix) Change member port discovery
4343
- (Feature) Do not change external service ports
44+
- (Bugfix) Fix Operator Debug mode
4445

4546
## [1.2.20](https://github.com/arangodb/kube-arangodb/tree/1.2.20) (2022-10-25)
4647
- (Feature) Add action progress

chart/kube-arangodb/templates/deployment-operator/role.yaml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,18 @@ rules:
3838
- apiGroups: ["backup.arangodb.com"]
3939
resources: ["arangobackuppolicies", "arangobackups"]
4040
verbs: ["get", "list", "watch"]
41+
{{- if .Values.rbac.extensions.debug }}
42+
- apiGroups: ["events.k8s.io"]
43+
resources: ["pods/log"]
44+
verbs: ["list"]
45+
- apiGroups: [""]
46+
resources: ["pods/log"]
47+
verbs: ["get", "ist"]
48+
{{- end }}
4149
{{- if .Values.rbac.extensions.monitoring }}
4250
- apiGroups: ["monitoring.coreos.com"]
4351
resources: ["servicemonitors"]
4452
verbs: ["get", "create", "delete", "update", "list", "watch", "patch"]
45-
4653
{{- end }}
4754
{{- end }}
4855
{{- end }}

chart/kube-arangodb/values.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,4 +61,5 @@ rbac:
6161
extensions:
6262
monitoring: true
6363
acs: true
64-
at: true
64+
at: true
65+
debug: false

cmd/debug.go

Lines changed: 35 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ package cmd
2222

2323
import (
2424
"compress/gzip"
25+
"io"
2526
"os"
2627

2728
"github.com/spf13/cobra"
@@ -50,32 +51,48 @@ var debugPackageInput struct {
5051
}
5152

5253
func debugPackageFunc(cmd *cobra.Command, _ []string) error {
53-
out := os.Stdout
54-
55-
if debugPackageInput.Output != "-" {
56-
f, err := os.OpenFile("./out.tar.gz", os.O_TRUNC|os.O_WRONLY|os.O_CREATE, 0644)
57-
if err != nil {
58-
return err
59-
}
60-
61-
out = f
54+
if debugPackageInput.Output == "-" {
55+
return debugPackageStdOut(cmd)
6256
}
6357

64-
gw := gzip.NewWriter(out)
58+
return debugPackageFile(cmd)
59+
}
6560

66-
if err := debug_package.GenerateD(cmd, gw); err != nil {
67-
return err
68-
}
61+
func debugPackageStdOut(cmd *cobra.Command) (returnError error) {
62+
return debugPackageGZip(cmd, os.Stdout)
63+
}
6964

70-
if err := gw.Close(); err != nil {
65+
func debugPackageFile(cmd *cobra.Command) (returnError error) {
66+
out, err := os.OpenFile("./out.tar.gz", os.O_TRUNC|os.O_WRONLY|os.O_CREATE, 0644)
67+
if err != nil {
7168
return err
7269
}
7370

74-
if debugPackageInput.Output != "-" {
71+
defer func() {
7572
if err := out.Close(); err != nil {
76-
return err
73+
if returnError == nil {
74+
returnError = err
75+
}
7776
}
78-
}
77+
}()
78+
79+
return debugPackageGZip(cmd, out)
80+
}
81+
82+
func debugPackageGZip(cmd *cobra.Command, out io.Writer) (returnError error) {
83+
gw := gzip.NewWriter(out)
84+
85+
defer func() {
86+
if err := gw.Close(); err != nil {
87+
if returnError == nil {
88+
returnError = err
89+
}
90+
}
91+
}()
92+
93+
return debugPackageRaw(cmd, gw)
94+
}
7995

80-
return nil
96+
func debugPackageRaw(cmd *cobra.Command, gw io.Writer) error {
97+
return debug_package.GenerateD(cmd, gw)
8198
}

0 commit comments

Comments
 (0)