Skip to content

Commit 148ec9d

Browse files
authored
[helm] Remove helm.sh/helm/v3 package (#281)
We decided to remove the "helm.sh/helm/v3" package in the Helm plugin. Instead we are using a custom logic to get the Helm releases from the Kubernetes API. These custom logic involves the following steps: - List all secrets with "owner=helm" - Loop through all returned secrets and decode the "release" key - Decompress the decoded release data an parse them into the Release struct We decided to use our own logic, because we had some problems with the official Helm package and our cluster logic. This leads to a not so satisfying experience during the development. Besides that we are now displaying the "values.yaml" file in the templates section in the frontend and we are using "isInline" for the Alert component when it is rendered in a Card component.
1 parent a2d533d commit 148ec9d

File tree

16 files changed

+785
-621
lines changed

16 files changed

+785
-621
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ NOTE: As semantic versioning states all 0.y.z releases can contain breaking chan
6969
- [#275](https://github.com/kobsio/kobs/pull/275): [azure] Improve cost management integration by adjusting the chart style and allowing the usage in dashboard panels.
7070
- [#276](https://github.com/kobsio/kobs/pull/276): [resources] :warning: _Breaking change:_ :warning: Add new `verbs` property for resource permissions, to allow administrators more control about what users can do.
7171
- [#279](https://github.com/kobsio/kobs/pull/279): [dashboards] :warning: _Breaking change:_ :warning: Refactor defaults, placeholders and variables handling.
72+
- [#281](https://github.com/kobsio/kobs/pull/281): [helm] Remove `helm.sh/helm/v3` package and use a custom implementation to get Helm releases.
7273

7374
## [v0.7.0](https://github.com/kobsio/kobs/releases/tag/v0.7.0) (2021-11-19)
7475

docs/plugins/helm.md

-8
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,6 @@ The Helm plugin can be used to manage Helm releases within kobs.
66

77
![Details](assets/helm-details.png)
88

9-
## Configuration
10-
11-
The configuration for the Helm plugin can be used to set the driver for Helm.
12-
13-
| Field | Type | Description | Required |
14-
| ----- | ---- | ----------- | -------- |
15-
| driver | string | Set the Helm driver. | No |
16-
179
## Options
1810

1911
The following options can be used for a panel with the Helm plugin:

go.mod

+3-53
Original file line numberDiff line numberDiff line change
@@ -34,58 +34,36 @@ require (
3434
github.com/spf13/pflag v1.0.5
3535
github.com/stretchr/testify v1.7.0
3636
go.uber.org/zap v1.19.0
37-
helm.sh/helm/v3 v3.7.2
3837
k8s.io/api v0.22.4
3938
k8s.io/apiextensions-apiserver v0.22.4
4039
k8s.io/apimachinery v0.22.4
40+
k8s.io/cli-runtime v0.22.4
4141
k8s.io/client-go v0.22.4
4242
sigs.k8s.io/controller-runtime v0.10.3
4343
sigs.k8s.io/yaml v1.3.0
4444
)
4545

4646
require (
4747
github.com/Azure/azure-sdk-for-go/sdk/internal v0.8.1 // indirect
48-
github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect
4948
github.com/Azure/go-autorest v14.2.0+incompatible // indirect
5049
github.com/Azure/go-autorest/autorest/adal v0.9.14 // indirect
5150
github.com/Azure/go-autorest/autorest/azure/cli v0.4.2 // indirect
5251
github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect
5352
github.com/Azure/go-autorest/autorest/validation v0.3.1 // indirect
5453
github.com/Azure/go-autorest/logger v0.2.1 // indirect
5554
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
56-
github.com/BurntSushi/toml v0.3.1 // indirect
57-
github.com/MakeNowJust/heredoc v0.0.0-20170808103936-bb23615498cd // indirect
58-
github.com/Masterminds/goutils v1.1.1 // indirect
59-
github.com/Masterminds/semver/v3 v3.1.1 // indirect
60-
github.com/Masterminds/sprig/v3 v3.2.2 // indirect
61-
github.com/Masterminds/squirrel v1.5.2 // indirect
62-
github.com/Microsoft/go-winio v0.4.17 // indirect
63-
github.com/Microsoft/hcsshim v0.8.21 // indirect
6455
github.com/PuerkitoBio/goquery v1.5.1 // indirect
6556
github.com/PuerkitoBio/purell v1.1.1 // indirect
6657
github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578 // indirect
6758
github.com/andybalholm/cascadia v1.1.0 // indirect
68-
github.com/asaskevich/govalidator v0.0.0-20200428143746-21a406dcc535 // indirect
6959
github.com/beorn7/perks v1.0.1 // indirect
7060
github.com/cespare/xxhash/v2 v2.1.1 // indirect
7161
github.com/cloudflare/golz4 v0.0.0-20150217214814-ef862a3cdc58 // indirect
72-
github.com/containerd/containerd v1.5.7 // indirect
73-
github.com/containerd/continuity v0.1.0 // indirect
74-
github.com/cyphar/filepath-securejoin v0.2.2 // indirect
7562
github.com/davecgh/go-spew v1.1.1 // indirect
7663
github.com/dgrijalva/jwt-go v3.2.0+incompatible // indirect
7764
github.com/dimchansky/utfbom v1.1.1 // indirect
78-
github.com/docker/cli v20.10.7+incompatible // indirect
79-
github.com/docker/distribution v2.7.1+incompatible // indirect
80-
github.com/docker/docker v17.12.0-ce-rc1.0.20200618181300-9dc6525e6118+incompatible // indirect
81-
github.com/docker/docker-credential-helpers v0.6.3 // indirect
82-
github.com/docker/go-connections v0.4.0 // indirect
83-
github.com/docker/go-metrics v0.0.1 // indirect
84-
github.com/docker/go-units v0.4.0 // indirect
8565
github.com/dustin/go-humanize v1.0.0 // indirect
8666
github.com/evanphx/json-patch v4.11.0+incompatible // indirect
87-
github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect
88-
github.com/fatih/color v1.7.0 // indirect
8967
github.com/fluxcd/pkg/apis/kustomize v0.2.0 // indirect
9068
github.com/fluxcd/pkg/runtime v0.12.2 // indirect
9169
github.com/form3tech-oss/jwt-go v3.2.3+incompatible // indirect
@@ -94,7 +72,6 @@ require (
9472
github.com/go-openapi/jsonpointer v0.19.5 // indirect
9573
github.com/go-openapi/jsonreference v0.19.5 // indirect
9674
github.com/go-openapi/swag v0.19.14 // indirect
97-
github.com/gobwas/glob v0.2.3 // indirect
9875
github.com/gogo/googleapis v1.4.0 // indirect
9976
github.com/gogo/protobuf v1.3.2 // indirect
10077
github.com/golang/protobuf v1.5.2 // indirect
@@ -105,48 +82,32 @@ require (
10582
github.com/google/uuid v1.2.0 // indirect
10683
github.com/googleapis/gnostic v0.5.5 // indirect
10784
github.com/gorilla/mux v1.8.0 // indirect
108-
github.com/gosuri/uitable v0.0.4 // indirect
10985
github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 // indirect
11086
github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect
11187
github.com/hashicorp/go-cleanhttp v0.5.1 // indirect
11288
github.com/hashicorp/go-retryablehttp v0.6.8 // indirect
11389
github.com/hashicorp/go-version v1.2.0 // indirect
114-
github.com/huandu/xstrings v1.3.2 // indirect
11590
github.com/imdario/mergo v0.3.12 // indirect
11691
github.com/inconshreveable/mousetrap v1.0.0 // indirect
11792
github.com/jaegertracing/jaeger v1.15.1 // indirect
118-
github.com/jmoiron/sqlx v1.3.1 // indirect
11993
github.com/josharian/intern v1.0.0 // indirect
12094
github.com/json-iterator/go v1.1.11 // indirect
12195
github.com/klauspost/compress v1.13.5 // indirect
12296
github.com/klauspost/cpuid v1.3.1 // indirect
123-
github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect
124-
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
97+
github.com/kr/pretty v0.2.1 // indirect
12598
github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect
12699
github.com/mailru/easyjson v0.7.6 // indirect
127-
github.com/mattn/go-colorable v0.0.9 // indirect
128-
github.com/mattn/go-isatty v0.0.4 // indirect
129-
github.com/mattn/go-runewidth v0.0.9 // indirect
130100
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
131101
github.com/minio/md5-simd v1.1.0 // indirect
132102
github.com/minio/sha256-simd v0.1.1 // indirect
133-
github.com/mitchellh/copystructure v1.1.1 // indirect
134103
github.com/mitchellh/go-homedir v1.1.0 // indirect
135-
github.com/mitchellh/go-wordwrap v1.0.0 // indirect
136104
github.com/mitchellh/mapstructure v1.4.1 // indirect
137-
github.com/mitchellh/reflectwalk v1.0.1 // indirect
138105
github.com/mmcdole/goxpp v0.0.0-20181012175147-0068e33feabf // indirect
139-
github.com/moby/locker v1.0.1 // indirect
140106
github.com/moby/spdystream v0.2.0 // indirect
141-
github.com/moby/term v0.0.0-20210610120745-9d4ed1856297 // indirect
142107
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
143108
github.com/modern-go/reflect2 v1.0.1 // indirect
144109
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
145-
github.com/morikuni/aec v1.0.0 // indirect
146110
github.com/nitishm/engarde v0.1.1 // indirect
147-
github.com/opencontainers/go-digest v1.0.0 // indirect
148-
github.com/opencontainers/image-spec v1.0.1 // indirect
149-
github.com/opencontainers/runc v1.0.2 // indirect
150111
github.com/openshift/api v0.0.0-20200221181648-8ce0047d664f // indirect
151112
github.com/opentracing/opentracing-go v1.1.0 // indirect
152113
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
@@ -157,17 +118,11 @@ require (
157118
github.com/prometheus/procfs v0.6.0 // indirect
158119
github.com/rs/xid v1.2.1 // indirect
159120
github.com/rs/zerolog v1.20.0 // indirect
160-
github.com/rubenv/sql-migrate v0.0.0-20210614095031-55d5740dbbcc // indirect
161-
github.com/russross/blackfriday v1.5.2 // indirect
162121
github.com/shopspring/decimal v1.3.1 // indirect
163122
github.com/sirupsen/logrus v1.8.1 // indirect
164-
github.com/spf13/cast v1.3.1 // indirect
165123
github.com/spf13/cobra v1.2.1 // indirect
166124
github.com/stretchr/objx v0.2.0 // indirect
167125
github.com/vjeantet/grok v1.0.0 // indirect
168-
github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f // indirect
169-
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
170-
github.com/xeipuuv/gojsonschema v1.2.0 // indirect
171126
github.com/xlab/treeprint v0.0.0-20181112141820-a009c3971eca // indirect
172127
go.starlark.net v0.0.0-20200306205701-8dd3e2ee1dd5 // indirect
173128
go.uber.org/atomic v1.7.0 // indirect
@@ -184,20 +139,15 @@ require (
184139
google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c // indirect
185140
google.golang.org/grpc v1.38.0 // indirect
186141
google.golang.org/protobuf v1.26.0 // indirect
187-
gopkg.in/gorp.v1 v1.7.2 // indirect
142+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
188143
gopkg.in/inf.v0 v0.9.1 // indirect
189144
gopkg.in/ini.v1 v1.62.0 // indirect
190145
gopkg.in/square/go-jose.v2 v2.5.1 // indirect
191146
gopkg.in/yaml.v2 v2.4.0 // indirect
192147
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b // indirect
193-
k8s.io/apiserver v0.22.4 // indirect
194-
k8s.io/cli-runtime v0.22.4 // indirect
195-
k8s.io/component-base v0.22.4 // indirect
196148
k8s.io/klog/v2 v2.9.0 // indirect
197149
k8s.io/kube-openapi v0.0.0-20211109043538-20434351676c // indirect
198-
k8s.io/kubectl v0.22.4 // indirect
199150
k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a // indirect
200-
oras.land/oras-go v0.4.0 // indirect
201151
sigs.k8s.io/kustomize/api v0.8.11 // indirect
202152
sigs.k8s.io/kustomize/kyaml v0.11.0 // indirect
203153
sigs.k8s.io/structured-merge-diff/v4 v4.1.2 // indirect

0 commit comments

Comments
 (0)