Upgrade DWO dependency to v0.23.0

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
pull/1770/head
Angel Misevski 2023-10-17 12:57:51 -04:00
parent 5541583adb
commit fb972f93e7
10 changed files with 80 additions and 27 deletions

View File

@ -448,7 +448,7 @@
| [golang.org/x/mobile@d3739f865fa66d07c1f506505c18aac71a8ead6e](https://cs.opensource.google/go) | BSD-3-Clause | N/A |
| [github.com/devfile/api/v2@0d163445376d4d28898f3fbac4f2ff62863b944b](https://github.com/devfile/api.git) | Apache-2.0 | [clearlydefined](https://clearlydefined.io/definitions/git/github/devfile/api/0d163445376d4d28898f3fbac4f2ff62863b944b) |
| [github.com/che-incubator/kubernetes-image-puller-operator@0128446f5af78587c0427a35d693bbb8d24036bc](https://github.com/che-incubator/kubernetes-image-puller-operator.git) | EPL-2.0 | todo |
| [github.com/devfile/devworkspace-operator@v0.21.0](https://github.com/devfile/devworkspace-operator.git) | Apache-2.0 | [clearlydefined](https://clearlydefined.io/definitions/git/github/devfile/devworkspace-operator/21edf4373322c228ed54a5d4747b0451435a8f08) |
| [github.com/devfile/devworkspace-operator@v0.23.0](https://github.com/devfile/devworkspace-operator.git) | Apache-2.0 | [clearlydefined](https://clearlydefined.io/definitions/git/github/devfile/devworkspace-operator/2d9aa0fa7ba6296c51dd44269bf5c872f5dd41b7) |
| [github.com/gophercloud/gophercloud@v0.1.0](https://github.com/gophercloud/gophercloud) | Apache-2.0 | [clearlydefined](https://clearlydefined.io/definitions/go/golang/github.com%2Fgophercloud/gophercloud/v0.1.0) |
| [gopkg.in/imdario/mergo.v0@v0.3.7](https://github.com/imdario/mergo/) | BSD-3-Clause | [clearlydefined](https://clearlydefined.io/definitions/go/golang/github.com%2Fimdario/mergo/v0.3.7) |
| [github.com/mikefarah/yq/v2@v2.4.1](https://github.com/mikefarah/yq) | MIT | [clearlydefined](https://clearlydefined.io/definitions/git/github/mikefarah/yq/b8b2c9de6189471c0cdbd459b5b0b49a57844bd4) |

View File

@ -77,7 +77,7 @@ metadata:
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
repository: https://github.com/eclipse-che/che-operator
support: Eclipse Foundation
name: eclipse-che.v7.76.0-811.next
name: eclipse-che.v7.76.0-812.next
namespace: placeholder
spec:
apiservicedefinitions: {}
@ -1234,7 +1234,7 @@ spec:
minKubeVersion: 1.19.0
provider:
name: Eclipse Foundation
version: 7.76.0-811.next
version: 7.76.0-812.next
webhookdefinitions:
- admissionReviewVersions:
- v1

2
go.mod
View File

@ -5,7 +5,7 @@ go 1.18
require (
github.com/che-incubator/kubernetes-image-puller-operator v0.0.0-20210929175054-0128446f5af7
github.com/devfile/api/v2 v2.2.1-alpha.0.20230413012049-a6c32fca0dbd
github.com/devfile/devworkspace-operator v0.22.0
github.com/devfile/devworkspace-operator v0.23.0
github.com/go-logr/logr v1.2.3
github.com/golang/mock v1.5.0
github.com/google/go-cmp v0.5.9

4
go.sum
View File

@ -102,8 +102,8 @@ github.com/deislabs/oras v0.8.1/go.mod h1:Mx0rMSbBNaNfY9hjpccEnxkOqJL6KGjtxNHPLC
github.com/denisenkom/go-mssqldb v0.0.0-20190204142019-df6d76eb9289/go.mod h1:xN/JuLBIz4bjkxNmByTiV1IbhfnYb6oo99phBn4Eqhc=
github.com/devfile/api/v2 v2.2.1-alpha.0.20230413012049-a6c32fca0dbd h1:HpGR728CfB6BB9ZuFtQb0UeTIYNFgpuGsuoMOJNMUTM=
github.com/devfile/api/v2 v2.2.1-alpha.0.20230413012049-a6c32fca0dbd/go.mod h1:qp8jcw12y1JdCsxjK/7LJ7uWaJOxcY1s2LUk5PhbkbM=
github.com/devfile/devworkspace-operator v0.22.0 h1:Q2w419Y4E5yOYxIY6LI4u4fHi5YewKQsRIN1J4Jlh3Q=
github.com/devfile/devworkspace-operator v0.22.0/go.mod h1:42cQKSbE+Zdqez8X5IqlEfdeeA0a/LkOTe2kkekJX6c=
github.com/devfile/devworkspace-operator v0.23.0 h1:QUJXt6OtKILTuQUbSE2r6zyIysxhqx9sgZeMo1l7yJs=
github.com/devfile/devworkspace-operator v0.23.0/go.mod h1:42cQKSbE+Zdqez8X5IqlEfdeeA0a/LkOTe2kkekJX6c=
github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ=
github.com/dhui/dktest v0.3.2/go.mod h1:l1/ib23a/CmxAe7yixtrYPc8Iy90Zy2udyaHINM5p58=
github.com/docker/cli v0.0.0-20200130152716-5d0cf8839492 h1:FwssHbCDJD025h+BchanCwE1Q8fyMgqDr2mOQAWOLGw=

View File

@ -54,7 +54,8 @@ type RoutingConfig struct {
// On OpenShift, the operator automatically reads values from the "cluster" proxies.config.openshift.io
// object and this value only needs to be set to override those defaults. Values for httpProxy
// and httpsProxy override the cluster configuration directly. Entries for noProxy are merged
// with the noProxy values in the cluster configuration.
// with the noProxy values in the cluster configuration. To ignore automatically read values from the cluster,
// set values in fields to the empty string ("")
//
// Changes to the proxy configuration are detected by the DevWorkspace Operator and propagated to
// DevWorkspaces. However, changing the proxy configuration for the DevWorkspace Operator itself
@ -154,13 +155,16 @@ type PersistentHomeConfig struct {
}
type Proxy struct {
// HttpProxy is the URL of the proxy for HTTP requests, in the format http://USERNAME:PASSWORD@SERVER:PORT/
HttpProxy string `json:"httpProxy,omitempty"`
// HttpsProxy is the URL of the proxy for HTTPS requests, in the format http://USERNAME:PASSWORD@SERVER:PORT/
HttpsProxy string `json:"httpsProxy,omitempty"`
// HttpProxy is the URL of the proxy for HTTP requests, in the format http://USERNAME:PASSWORD@SERVER:PORT/. To ignore
// automatically detected proxy settings for the cluster, set this field to an empty string ("")
HttpProxy *string `json:"httpProxy,omitempty"`
// HttpsProxy is the URL of the proxy for HTTPS requests, in the format http://USERNAME:PASSWORD@SERVER:PORT/. To ignore
// automatically detected proxy settings for the cluster, set this field to an empty string ("")
HttpsProxy *string `json:"httpsProxy,omitempty"`
// NoProxy is a comma-separated list of hostnames and/or CIDRs for which the proxy should not be used. Ignored
// when HttpProxy and HttpsProxy are unset
NoProxy string `json:"noProxy,omitempty"`
// when HttpProxy and HttpsProxy are unset. To ignore automatically detected proxy settings for the cluster, set this
// field to an empty string ("")
NoProxy *string `json:"noProxy,omitempty"`
}
type StorageSizes struct {

View File

@ -62,6 +62,7 @@ const (
RoutingReady DevWorkspaceRoutingPhase = "Ready"
RoutingPreparing DevWorkspaceRoutingPhase = "Preparing"
RoutingFailed DevWorkspaceRoutingPhase = "Failed"
RoutingStopped DevWorkspaceRoutingPhase = "Stopped"
)
type ExposedEndpoint struct {

View File

@ -494,6 +494,21 @@ func (in *ProjectCloneConfig) DeepCopy() *ProjectCloneConfig {
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *Proxy) DeepCopyInto(out *Proxy) {
*out = *in
if in.HttpProxy != nil {
in, out := &in.HttpProxy, &out.HttpProxy
*out = new(string)
**out = **in
}
if in.HttpsProxy != nil {
in, out := &in.HttpsProxy, &out.HttpsProxy
*out = new(string)
**out = **in
}
if in.NoProxy != nil {
in, out := &in.NoProxy, &out.NoProxy
*out = new(string)
**out = **in
}
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Proxy.
@ -512,7 +527,7 @@ func (in *RoutingConfig) DeepCopyInto(out *RoutingConfig) {
if in.ProxyConfig != nil {
in, out := &in.ProxyConfig, &out.ProxyConfig
*out = new(Proxy)
**out = **in
(*in).DeepCopyInto(*out)
}
}

View File

@ -108,6 +108,9 @@ func (r *DevWorkspaceRoutingReconciler) Reconcile(ctx context.Context, req ctrl.
}
if instance.Annotations != nil && instance.Annotations[constants.DevWorkspaceStartedStatusAnnotation] == "false" {
if err := r.setStatusStopped(instance); err != nil {
return reconcile.Result{}, err
}
return reconcile.Result{}, nil
}
@ -291,6 +294,14 @@ func (r *DevWorkspaceRoutingReconciler) reconcileStatus(
return r.Status().Update(context.TODO(), instance)
}
func (r *DevWorkspaceRoutingReconciler) setStatusStopped(instance *controllerv1alpha1.DevWorkspaceRouting) error {
instance.Status.Phase = controllerv1alpha1.RoutingStopped
instance.Status.Message = "DevWorkspace is not started"
instance.Status.PodAdditions = nil
instance.Status.ExposedEndpoints = nil
return r.Status().Update(context.TODO(), instance)
}
func contains(list []string, s string) bool {
for _, v := range list {
if v == s {

View File

@ -51,9 +51,9 @@ func GetClusterProxyConfig(nonCachedClient crclient.Client) (*controller.Proxy,
}
proxyConfig := &controller.Proxy{
HttpProxy: proxy.Status.HTTPProxy,
HttpsProxy: proxy.Status.HTTPSProxy,
NoProxy: proxy.Status.NoProxy,
HttpProxy: &proxy.Status.HTTPProxy,
HttpsProxy: &proxy.Status.HTTPSProxy,
NoProxy: &proxy.Status.NoProxy,
}
return proxyConfig, nil
@ -63,31 +63,53 @@ func GetClusterProxyConfig(nonCachedClient crclient.Client) (*controller.Proxy,
// operator configuration taking precedence. Accepts nil arguments. If both arguments are nil, returns nil.
func MergeProxyConfigs(operatorConfig, clusterConfig *controller.Proxy) *controller.Proxy {
if clusterConfig == nil {
return operatorConfig
return removeEmptyStrings(operatorConfig)
}
if operatorConfig == nil {
return clusterConfig
return removeEmptyStrings(clusterConfig)
}
mergedProxy := &controller.Proxy{
HttpProxy: operatorConfig.HttpProxy,
HttpsProxy: operatorConfig.HttpsProxy,
NoProxy: operatorConfig.NoProxy,
}
if mergedProxy.HttpProxy == "" {
if mergedProxy.HttpProxy == nil {
mergedProxy.HttpProxy = clusterConfig.HttpProxy
}
if mergedProxy.HttpsProxy == "" {
if mergedProxy.HttpsProxy == nil {
mergedProxy.HttpsProxy = clusterConfig.HttpsProxy
}
if mergedProxy.NoProxy == "" {
if mergedProxy.NoProxy == nil {
mergedProxy.NoProxy = clusterConfig.NoProxy
} else {
} else if *mergedProxy.NoProxy != "" {
// Merge noProxy fields, joining with a comma
if clusterConfig.NoProxy != "" {
mergedProxy.NoProxy = fmt.Sprintf("%s,%s", clusterConfig.NoProxy, operatorConfig.NoProxy)
if clusterConfig.NoProxy != nil {
noProxy := fmt.Sprintf("%s,%s", *clusterConfig.NoProxy, *operatorConfig.NoProxy)
mergedProxy.NoProxy = &noProxy
}
}
return mergedProxy
return removeEmptyStrings(mergedProxy)
}
// removeEmptyStrings is a utility function for removing empty fields from a proxy configuration. This is required
// to allow overriding
func removeEmptyStrings(proxyConfig *controller.Proxy) *controller.Proxy {
if proxyConfig == nil {
return nil
}
updated := &controller.Proxy{}
if proxyConfig.HttpProxy != nil && *proxyConfig.HttpProxy != "" {
updated.HttpProxy = proxyConfig.HttpProxy
}
if proxyConfig.HttpsProxy != nil && *proxyConfig.HttpsProxy != "" {
updated.HttpsProxy = proxyConfig.HttpsProxy
}
if proxyConfig.NoProxy != nil && *proxyConfig.NoProxy != "" {
updated.NoProxy = proxyConfig.NoProxy
}
return updated
}

2
vendor/modules.txt vendored
View File

@ -32,7 +32,7 @@ github.com/davecgh/go-spew/spew
github.com/devfile/api/v2/pkg/apis/workspaces/v1alpha2
github.com/devfile/api/v2/pkg/attributes
github.com/devfile/api/v2/pkg/devfile
# github.com/devfile/devworkspace-operator v0.22.0
# github.com/devfile/devworkspace-operator v0.23.0
## explicit; go 1.18
github.com/devfile/devworkspace-operator/apis/controller/v1alpha1
github.com/devfile/devworkspace-operator/controllers/controller/devworkspacerouting