Skip to content

Commit 796ed6f

Browse files
authored
feat: air gap registry v2 (#5220)
* wip: adding connection field * updating proto * wip: adding certificate in proto * main merge * wip * common lib update * common lib update * common lib update * adding argocd assets * make fix * make fix * adding argocd assets * common lib update
1 parent 3c254f4 commit 796ed6f

File tree

232 files changed

+8136
-7908
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

232 files changed

+8136
-7908
lines changed

api/helm-app/gRPC/applist.pb.go

Lines changed: 621 additions & 271 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

api/helm-app/gRPC/applist.proto

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,8 +371,38 @@ message RegistryCredential {
371371
string RegistryType = 7;
372372
string RepoName = 8;
373373
bool IsPublic = 9;
374+
RemoteConnectionConfig RemoteConnectionConfig = 10;
375+
string Connection = 11;
376+
string RegistryName = 12;
377+
string RegistryCertificate = 13;
374378
}
375379

380+
381+
message RemoteConnectionConfig {
382+
RemoteConnectionMethod RemoteConnectionMethod = 1;
383+
ProxyConfig ProxyConfig = 2;
384+
SSHTunnelConfig SSHTunnelConfig = 3;
385+
}
386+
387+
enum RemoteConnectionMethod {
388+
PROXY = 0;
389+
SSH = 1;
390+
DIRECT = 2;
391+
}
392+
393+
message ProxyConfig {
394+
string ProxyUrl = 1;
395+
}
396+
397+
message SSHTunnelConfig {
398+
string SSHServerAddress = 1;
399+
string SSHUsername = 2;
400+
string SSHPassword = 3;
401+
string SSHAuthKey = 4;
402+
}
403+
404+
405+
376406
message OCIRegistryResponse {
377407
bool IsLoggedIn = 1;
378408
}

api/helm-app/gRPC/applist_grpc.pb.go

Lines changed: 72 additions & 43 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

api/helm-app/service/HelmAppService.go

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1005,15 +1005,18 @@ func (impl *HelmAppServiceImpl) TemplateChart(ctx context.Context, templateChart
10051005
}
10061006
IsOCIRepo = true
10071007
registryCredential = &gRPC.RegistryCredential{
1008-
RegistryUrl: appStoreAppVersion.AppStore.DockerArtifactStore.RegistryURL,
1009-
Username: appStoreAppVersion.AppStore.DockerArtifactStore.Username,
1010-
Password: appStoreAppVersion.AppStore.DockerArtifactStore.Password,
1011-
AwsRegion: appStoreAppVersion.AppStore.DockerArtifactStore.AWSRegion,
1012-
AccessKey: appStoreAppVersion.AppStore.DockerArtifactStore.AWSAccessKeyId,
1013-
SecretKey: appStoreAppVersion.AppStore.DockerArtifactStore.AWSSecretAccessKey,
1014-
RegistryType: string(appStoreAppVersion.AppStore.DockerArtifactStore.RegistryType),
1015-
RepoName: appStoreAppVersion.AppStore.Name,
1016-
IsPublic: ociRegistryConfig.IsPublic,
1008+
RegistryUrl: appStoreAppVersion.AppStore.DockerArtifactStore.RegistryURL,
1009+
Username: appStoreAppVersion.AppStore.DockerArtifactStore.Username,
1010+
Password: appStoreAppVersion.AppStore.DockerArtifactStore.Password,
1011+
AwsRegion: appStoreAppVersion.AppStore.DockerArtifactStore.AWSRegion,
1012+
AccessKey: appStoreAppVersion.AppStore.DockerArtifactStore.AWSAccessKeyId,
1013+
SecretKey: appStoreAppVersion.AppStore.DockerArtifactStore.AWSSecretAccessKey,
1014+
RegistryType: string(appStoreAppVersion.AppStore.DockerArtifactStore.RegistryType),
1015+
RepoName: appStoreAppVersion.AppStore.Name,
1016+
IsPublic: ociRegistryConfig.IsPublic,
1017+
Connection: appStoreAppVersion.AppStore.DockerArtifactStore.Connection,
1018+
RegistryName: appStoreAppVersion.AppStore.DockerArtifactStoreId,
1019+
RegistryCertificate: appStoreAppVersion.AppStore.DockerArtifactStore.Cert,
10171020
}
10181021
} else {
10191022
chartRepository = &gRPC.ChartRepository{

go.mod

Lines changed: 43 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
module github.com/devtron-labs/devtron
22

3-
go 1.20
3+
go 1.21
4+
5+
toolchain go1.21.8
46

57
require (
68
github.com/Masterminds/semver v1.5.0
@@ -18,9 +20,9 @@ require (
1820
github.com/davecgh/go-spew v1.1.1
1921
github.com/deckarep/golang-set v1.8.0
2022
github.com/devtron-labs/authenticator v0.4.35-0.20240607135426-c86e868ecee1
21-
github.com/devtron-labs/common-lib v0.0.19-0.20240607054959-82c79c23b046
23+
github.com/devtron-labs/common-lib v0.0.19-0.20240612123206-80cb4388edf6
2224
github.com/devtron-labs/protos v0.0.3-0.20240326053929-48e42d9d4534
23-
github.com/evanphx/json-patch v5.6.0+incompatible
25+
github.com/evanphx/json-patch v5.7.0+incompatible
2426
github.com/gammazero/workerpool v1.1.3
2527
github.com/ghodss/yaml v1.0.1-0.20190212211648-25d852aebe32
2628
github.com/go-git/go-billy/v5 v5.5.0
@@ -45,7 +47,7 @@ require (
4547
github.com/invopop/jsonschema v0.7.0
4648
github.com/juju/errors v0.0.0-20200330140219-3fe23663418f
4749
github.com/ktrysmt/go-bitbucket v0.9.60
48-
github.com/lib/pq v1.10.4
50+
github.com/lib/pq v1.10.9
4951
github.com/microsoft/azure-devops-go-api/azuredevops v1.0.0-b5
5052
github.com/otiai10/copy v1.0.2
5153
github.com/patrickmn/go-cache v2.1.0+incompatible
@@ -77,14 +79,14 @@ require (
7779
gopkg.in/go-playground/validator.v9 v9.30.0
7880
gopkg.in/igm/sockjs-go.v3 v3.0.0
7981
gopkg.in/yaml.v2 v2.4.0
80-
k8s.io/api v0.26.11
81-
k8s.io/apimachinery v0.26.11
82-
k8s.io/client-go v0.26.11
82+
k8s.io/api v0.29.0
83+
k8s.io/apimachinery v0.29.0
84+
k8s.io/client-go v0.29.0
8385
k8s.io/helm v2.12.3+incompatible
84-
k8s.io/kubectl v0.26.4
86+
k8s.io/kubectl v0.29.0
8587
k8s.io/kubernetes v1.26.11
8688
k8s.io/metrics v0.26.4
87-
k8s.io/utils v0.0.0-20221107191617-1a15be271d1d
89+
k8s.io/utils v0.0.0-20230726121419-3b25d923346b
8890
sigs.k8s.io/yaml v1.3.0
8991
)
9092

@@ -104,7 +106,7 @@ require (
104106
github.com/Azure/go-autorest/autorest/date v0.3.0 // indirect
105107
github.com/Azure/go-autorest/logger v0.2.1 // indirect
106108
github.com/Azure/go-autorest/tracing v0.6.0 // indirect
107-
github.com/BurntSushi/toml v0.3.1 // indirect
109+
github.com/BurntSushi/toml v1.3.2 // indirect
108110
github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible // indirect
109111
github.com/MakeNowJust/heredoc v1.0.0 // indirect
110112
github.com/Masterminds/goutils v1.1.1 // indirect
@@ -132,12 +134,12 @@ require (
132134
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
133135
github.com/docker/distribution v2.8.2+incompatible // indirect
134136
github.com/doublerebel/bellows v0.0.0-20160303004610-f177d92a03d3 // indirect
135-
github.com/emicklei/go-restful/v3 v3.9.0 // indirect
137+
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
136138
github.com/emirpasic/gods v1.18.1 // indirect
137139
github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect
138140
github.com/fatih/camelcase v1.0.0 // indirect
139141
github.com/felixge/httpsnoop v1.0.4 // indirect
140-
github.com/fvbommel/sortorder v1.0.1 // indirect
142+
github.com/fvbommel/sortorder v1.1.0 // indirect
141143
github.com/gammazero/deque v0.2.0 // indirect
142144
github.com/go-errors/errors v1.4.2 // indirect
143145
github.com/go-git/gcfg v1.5.1-0.20230307220236-3a3c6141e376 // indirect
@@ -167,11 +169,11 @@ require (
167169
github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect
168170
github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 // indirect
169171
github.com/grpc-ecosystem/grpc-gateway/v2 v2.16.0 // indirect
170-
github.com/hashicorp/errwrap v1.0.0 // indirect
172+
github.com/hashicorp/errwrap v1.1.0 // indirect
171173
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
172174
github.com/hashicorp/go-retryablehttp v0.7.4 // indirect
173175
github.com/hashicorp/go-uuid v1.0.2 // indirect
174-
github.com/huandu/xstrings v1.3.3 // indirect
176+
github.com/huandu/xstrings v1.4.0 // indirect
175177
github.com/iancoleman/orderedmap v0.0.0-20190318233801-ac98e3ecb4b0 // indirect
176178
github.com/igm/sockjs-go v3.0.0+incompatible // indirect
177179
github.com/imdario/mergo v0.3.16 // indirect
@@ -195,11 +197,11 @@ require (
195197
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
196198
github.com/minio/highwayhash v1.0.2 // indirect
197199
github.com/mitchellh/copystructure v1.2.0 // indirect
198-
github.com/mitchellh/go-wordwrap v1.0.0 // indirect
200+
github.com/mitchellh/go-wordwrap v1.0.1 // indirect
199201
github.com/mitchellh/mapstructure v1.5.0 // indirect
200202
github.com/mitchellh/reflectwalk v1.0.2 // indirect
201203
github.com/moby/spdystream v0.2.0 // indirect
202-
github.com/moby/term v0.0.0-20220808134915-39b0c02b01ae // indirect
204+
github.com/moby/term v0.5.0 // indirect
203205
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
204206
github.com/modern-go/reflect2 v1.0.2 // indirect
205207
github.com/monochromegane/go-gitignore v0.0.0-20200626010858-205db1a8cc00 // indirect
@@ -210,22 +212,22 @@ require (
210212
github.com/nats-io/nuid v1.0.1 // indirect
211213
github.com/oliveagle/jsonpath v0.0.0-20180606110733-2e52cf6e6852 // indirect
212214
github.com/opencontainers/go-digest v1.0.0 // indirect
213-
github.com/opencontainers/image-spec v1.1.0-rc.3 // indirect
215+
github.com/opencontainers/image-spec v1.1.0-rc5 // indirect
214216
github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
215217
github.com/pjbgf/sha1cd v0.3.0 // indirect
216218
github.com/pmezard/go-difflib v1.0.0 // indirect
217219
github.com/pquerna/cachecontrol v0.1.0 // indirect
218220
github.com/prometheus/client_model v0.4.1-0.20230718164431-9a2bf3000d16 // indirect
219-
github.com/prometheus/common v0.42.0 // indirect
221+
github.com/prometheus/common v0.44.0 // indirect
220222
github.com/prometheus/procfs v0.11.1 // indirect
221223
github.com/redis/go-redis/v9 v9.0.5 // indirect
222224
github.com/russross/blackfriday/v2 v2.1.0 // indirect
223225
github.com/sergi/go-diff v1.1.0 // indirect
224-
github.com/shopspring/decimal v1.2.0 // indirect
226+
github.com/shopspring/decimal v1.3.1 // indirect
225227
github.com/sirupsen/logrus v1.9.3 // indirect
226228
github.com/skeema/knownhosts v1.2.1 // indirect
227229
github.com/spf13/cast v1.5.0 // indirect
228-
github.com/spf13/cobra v1.7.0 // indirect
230+
github.com/spf13/cobra v1.8.0 // indirect
229231
github.com/spf13/pflag v1.0.5 // indirect
230232
github.com/stretchr/objx v0.5.0 // indirect
231233
github.com/tidwall/match v1.1.1 // indirect
@@ -238,13 +240,13 @@ require (
238240
github.com/xanzy/ssh-agent v0.3.3 // indirect
239241
github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect
240242
github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect
241-
github.com/xlab/treeprint v1.1.0 // indirect
243+
github.com/xlab/treeprint v1.2.0 // indirect
242244
github.com/xtgo/uuid v0.0.0-20140804021211-a0b114877d4c // indirect
243245
go.opencensus.io v0.24.0 // indirect
244-
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.44.0 // indirect
246+
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.45.0 // indirect
245247
go.opentelemetry.io/otel/metric v1.20.0 // indirect
246248
go.opentelemetry.io/proto/otlp v1.0.0 // indirect
247-
go.starlark.net v0.0.0-20220328144851-d1966c6b9fcd // indirect
249+
go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect
248250
go.uber.org/atomic v1.10.0 // indirect
249251
go.uber.org/multierr v1.11.0 // indirect
250252
golang.org/x/mod v0.15.0 // indirect
@@ -271,33 +273,34 @@ require (
271273
gopkg.in/square/go-jose.v2 v2.6.0 // indirect
272274
gopkg.in/warnings.v0 v0.1.2 // indirect
273275
gopkg.in/yaml.v3 v3.0.1 // indirect
274-
k8s.io/apiextensions-apiserver v0.26.4 // indirect
275-
k8s.io/apiserver v0.26.11 // indirect
276-
k8s.io/cli-runtime v0.26.4 // indirect
277-
k8s.io/component-base v0.26.11 // indirect
276+
k8s.io/apiextensions-apiserver v0.29.0 // indirect
277+
k8s.io/apiserver v0.29.0 // indirect
278+
k8s.io/cli-runtime v0.29.0 // indirect
279+
k8s.io/component-base v0.29.0 // indirect
278280
k8s.io/component-helpers v0.26.4 // indirect
279-
k8s.io/klog/v2 v2.100.1 // indirect
281+
k8s.io/klog/v2 v2.110.1 // indirect
280282
k8s.io/kube-aggregator v0.26.4 // indirect
281-
k8s.io/kube-openapi v0.0.0-20230501164219-8b0f38b5fd1f // indirect
283+
k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect
282284
mellium.im/sasl v0.3.1 // indirect
283285
oras.land/oras-go/v2 v2.2.0 // indirect
284286
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
285-
sigs.k8s.io/kustomize/api v0.12.1 // indirect
286-
sigs.k8s.io/kustomize/kyaml v0.13.9 // indirect
287-
sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect
287+
sigs.k8s.io/kustomize/api v0.13.5-0.20230601165947-6ce0bf390ce3 // indirect
288+
sigs.k8s.io/kustomize/kyaml v0.14.3-0.20230601165947-6ce0bf390ce3 // indirect
289+
sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect
288290
upper.io/db.v3 v3.8.0+incompatible // indirect
289291
xorm.io/builder v0.3.6 // indirect
290292
xorm.io/core v0.7.2 // indirect
291293
)
292294

293295
replace (
294296
github.com/go-check/check => github.com/go-check/check v0.0.0-20180628173108-788fd7840127
295-
k8s.io/api => k8s.io/api v0.26.4
296-
k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.26.4
297-
k8s.io/apimachinery => k8s.io/apimachinery v0.26.4
297+
github.com/googleapis/gnostic => github.com/googleapis/gnostic v0.5.7-v3refs
298+
k8s.io/api => k8s.io/api v0.26.11
299+
k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.26.11
300+
k8s.io/apimachinery => k8s.io/apimachinery v0.26.11
298301
k8s.io/apiserver => k8s.io/apiserver v0.26.11
299-
k8s.io/cli-runtime => k8s.io/cli-runtime v0.26.4
300-
k8s.io/client-go => k8s.io/client-go v0.26.4
302+
k8s.io/cli-runtime => k8s.io/cli-runtime v0.26.11
303+
k8s.io/client-go => k8s.io/client-go v0.26.11
301304
k8s.io/cloud-provider => k8s.io/cloud-provider v0.24.2
302305
k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.24.2
303306
k8s.io/code-generator => k8s.io/code-generator v0.24.2
@@ -308,6 +311,7 @@ replace (
308311
k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.24.2
309312
k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.26.4
310313
k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.24.2
314+
k8s.io/kube-openapi => k8s.io/kube-openapi v0.0.0-20221012153701-172d655c2280
311315
k8s.io/kube-proxy => k8s.io/kube-proxy v0.24.2
312316
k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.24.2
313317
k8s.io/kubectl => k8s.io/kubectl v0.26.4
@@ -317,4 +321,6 @@ replace (
317321
k8s.io/mount-utils => k8s.io/mount-utils v0.24.2
318322
k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.24.2
319323
k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.24.2
324+
sigs.k8s.io/kustomize/api => sigs.k8s.io/kustomize/api v0.12.1
325+
sigs.k8s.io/kustomize/kyaml => sigs.k8s.io/kustomize/kyaml v0.13.9 // indirect
320326
)

0 commit comments

Comments
 (0)