Commit Graph

120 Commits (fa620fb0040c8c21b44e169ee1ae04acae9d75d7)

Author SHA1 Message Date
Anatolii Bazko d4d21a2535
chore: operator roles sanitizing (#1814)
* chore: che-operator roles sanitizing

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2024-03-07 11:01:30 +01:00
Anatolii Bazko 504f01e2d0
feat: sync Secrets, ConfigMaps and PersistentVolumesClaims to users n… (#1799)
* feat: sync Secrets, ConfigMaps and PersistentVolumesClaims to users namespaces

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2024-01-24 12:12:52 +01:00
Angel Misevski d295ee1492 Update how too-long endpoint hostnames are handled
Update the hostname format used for endpoints whose hostnames are too
long from

  <workspace-id>-<order>.<base-domain>

to

  <workspace-id>-<endpoint-name>.<base-domain>

This is necessary as the iteration order through endpoints is random
(iterating through Go maps is random), resulting in inconsistent numbers
used for <order>.

Using a combination of workspace ID and endpoint name should always be
valid:

* Workspace IDs are 25 characters long
* Endpoint names are restricted to max 15 characters by the Devfile API
* Endpoint names and workspace IDs are required to be alphanumeric with
  dashes, starting and ending with an alphanumeric character
* Endpoint names are unique across all endpoints in the workspace

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2024-01-23 15:51:34 -05:00
Igor Vinokur 7c7bd4f796
Add Kubernetes host to the no proxy list (#1800)
Add Kubernetes host to the no proxy list
2024-01-18 20:06:16 +02:00
Anatolii Bazko a4e19ead9d
chore: Update dev resources (#1774)
* chore: Update dev resources

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2023-11-02 15:16:31 +01:00
Samantha Dawley 95351dfad4
Updating go (to match Dockerfile) and golang.org/x/net (#1772)
* Updating go and golang.org/x/net

* Add vendor updates

* Reverting change of go version since tidy only supports 1.18

* Update additional files to use go 1.19.13

* ran update-go-dependencies

* run 'make fmt' to fix formatting issues

Change-Id: I6280c8b6851d83ec69d7d9898ae48ae583dc2dfe
Signed-off-by: Nick Boldt <nboldt@redhat.com>

---------

Signed-off-by: Nick Boldt <nboldt@redhat.com>
Co-authored-by: Nick Boldt <nboldt@redhat.com>
2023-10-31 16:48:38 +01:00
Angel Misevski 851f110311 Add documentation on why proxy configuration is disabled in DWO
Co-authored-by: Anatolii Bazko <abazko@redhat.com>
Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2023-10-19 13:10:10 -04:00
Angel Misevski 85da4743ef Update tests to include both http_proxy and HTTP_proxy
Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2023-10-19 13:10:10 -04:00
Angel Misevski 4b86b1eba6 Set lowercase version of proxy env vars in addition to uppercase
To hopefully ensure all tools respect proxy settings for a workspace,
add both upper- and lower-case versions of the proxy environment
variables to workspaces.

For example, curl will only use the lower-case http_proxy, and will
ignore HTTP_PROXY.

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2023-10-19 13:10:10 -04:00
David Kwon 411821f612 fix: higher routing path match priority for longer pathnames
Signed-off-by: David Kwon <dakwon@redhat.com>
2023-06-22 10:03:10 -04:00
David Kwon 977d6bd1fb Use legacy routes if subdomain is too long
Signed-off-by: David Kwon <dakwon@redhat.com>
2023-06-09 11:23:46 -04:00
David Kwon cd72623e54 Fix subdomain for public endpoint urls
Signed-off-by: David Kwon <dakwon@redhat.com>
2023-06-06 12:08:30 -04:00
David Kwon 34a10852d4
Make workspace routes more user-friendly (#1672)
* Make workspace routes more user-friendly

Signed-off-by: David Kwon <dakwon@redhat.com>

* Add update verb for ingress in che-operator CR

Signed-off-by: David Kwon <dakwon@redhat.com>

* Legacy support

Signed-off-by: David Kwon <dakwon@redhat.com>

* Remove componentName field from from legacy strategy

Signed-off-by: David Kwon <dakwon@redhat.com>

* Determine path strategy in different function

Signed-off-by: David Kwon <dakwon@redhat.com>

* Enforce lowercase for username and dw name

Signed-off-by: David Kwon <dakwon@redhat.com>

* Run make update-dev-resources'

Signed-off-by: David Kwon <dakwon@redhat.com>

* Update dev resources

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

---------

Signed-off-by: David Kwon <dakwon@redhat.com>
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
Co-authored-by: Anatolii Bazko <abazko@redhat.com>
2023-05-31 14:33:56 +03:00
Anatolii Bazko 97f6177500
feat: Set empty CPU limits when possible (#1686)
* feat: Set empty CPU limits when possible

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2023-05-25 17:20:44 +03:00
Mykhailo Kuznietsov b9d8ce34b5
feat: add ability to override Gateway container in devEnvironments (#1639)
Signed-off-by: Mykhailo Kuznietsov <mkuznets@redhat.com>
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
Co-authored-by: Angel Misevski <amisevsk@redhat.com>

---------

Signed-off-by: Mykhailo Kuznietsov <mkuznets@redhat.com>
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
Co-authored-by: Anatolii Bazko <abazko@redhat.com>
Co-authored-by: Angel Misevski <amisevsk@redhat.com>
2023-04-25 17:18:38 +03:00
Anatolii Bazko 4bcc78a27a
feat: Allow to configure user custom roles (#1663)
* feat: Allow to configure user custom roles without duplicating default ones

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2023-04-21 14:52:05 +03:00
Anatolii Bazko fb6bccfd61
feat: Update Dev Workspace Operator v0.20.0 (#1660)
* feat: Update Dev Workspace Operator v0.20.0

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* Restore replaces in go.mod

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* Restore replaces in go.mod

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* chore: update DEPENDENCIES.md (#1661)

Signed-off-by: Andrew Obuchowicz <aobuchow@redhat.com>

* Update DEPENDENCIES.md

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

---------

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
Signed-off-by: Andrew Obuchowicz <aobuchow@redhat.com>
Co-authored-by: Andrew O <aobuchow@redhat.com>
2023-04-14 16:14:30 +03:00
Anatolii Bazko c1ec947acd
feat: Move some defaults out of CheCluster to env variables (#1642)
* feat: Move some defaults out of CheCluster to env variables

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2023-03-29 09:09:46 +03:00
Anatolii Bazko 8f9ebf2f8a
fix: Display workspace idle page on k8s (#1590)
* fix: Display workspace idle page on k8s

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* fix tests

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2023-01-04 10:52:45 +02:00
David Kwon e9e578ab15
Add retry middleware to retry connecting to mainurl if connection failed (#1579)
Signed-off-by: David Kwon <dakwon@redhat.com>
2022-12-16 10:22:28 -05:00
Anatolii Bazko 6057486aa0
fix: ImagePuller should not set any target namespaces for OperatorGroup (#1546)
* fix: ImagePuller should not set any target namespaces for OperatorGroup

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-11-01 08:52:24 +02:00
Anatolii Bazko 775a979a05
chore: Do not set default openVSXURL if operator is being deployed in… (#1544)
* chore: Do not set default openVSXURL if operator is being deployed in airgap environment

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-10-26 10:00:37 +03:00
Anatolii Bazko 25d1979b06
fix: Register ContainerBUildReconciler only for OpenShift (#1545)
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-10-25 14:47:37 +03:00
Anatolii Bazko 17dfedb4df
feat: Automatically add the container build SCC to users if containerBuildCapability is enabled (#1543)
* feat: Automatically add the container build SCC to users if containerBuildCapability is enabled

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-10-20 10:28:07 +03:00
Anatolii Bazko 21b652e2c4
feat: Automatically create the container build SCC if containerBuildC… (#1542)
* feat: Automatically create the container build SCC if containerBuildCapability is enabled

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-10-18 10:07:01 +03:00
Anatolii Bazko e855178764
fix: Don't add empty 'githost' key in 'git-tls-creds' ConfigMap (#1538)
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-10-11 14:38:34 +03:00
Anatolii Bazko 5373f5320d
feat: Move handling DevWorkspace operator resources out of Che Operator (#1520)
* feat: Remove managing Dev Workspace resources from operator codebase

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-09-22 12:23:54 +03:00
Andrew O 75a31c3bb3
feat: configure DWOC from che-operator CR (#1494)
* feat: configure DWOC from che-operator CR

Currently, only the following fields from the checluster custom resource
are propagated to the DevWorkspace-Operator Configuration:

- `checluster.spec.devEnvironments.Storage.pvcStrategy`
- `checluster.spec.devEnvironments.Storage.perUserStrategyPvcConfig.ClaimSize`
- `checluster.spec.devEnvironments.Storage.perUserStrategyPvcConfig.StorageClass`
- `checluster.spec.devEnvironments.Storage.perWorkspaceStrategyPvcConfig.ClaimSize`
- `checluster.spec.devEnvironments.Storage.perWorkspaceStrategyPvcConfig.StorageClass`

Signed-off-by: Andrew Obuchowicz <aobuchow@redhat.com>

* Update CSV and autogenerated apiv2 deepcopy

Signed-off-by: Andrew Obuchowicz <aobuchow@redhat.com>

* Refactoring

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* make fmt

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

Signed-off-by: Andrew Obuchowicz <aobuchow@redhat.com>
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
Co-authored-by: Anatolii Bazko <abazko@redhat.com>
2022-09-02 19:50:35 +03:00
Anatolii Bazko 61a89f7670
chore: default VSX registry should be open-vsx.org (#1484)
* chore: default VSX registry should be openvsx.org

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-08-17 15:44:35 +03:00
Anatolii Bazko 7de6e58b26
fix: Update namespace object instead of project (#1473)
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-08-09 12:13:03 +03:00
David Kwon 35bd69184c
feat: implement secondsOfInactivityBeforeIdling and secondsOfRunBefor… (#1443)
* feat: implement secondsOfInactivityBeforeIdling and secondsOfRunBeforeIdling CR config

Signed-off-by: David Kwon <dakwon@redhat.com>
Co-authored-by: Anatolii Bazko <abazko@redhat.com>
2022-07-13 13:04:59 -04:00
Anatolii Bazko aa0806fde4
chore: Refactoring (#1411)
* chore: Refactoring

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-06-24 19:34:27 +03:00
Anatolii Bazko 38f6cb6381
feat: CheCluster defaults (#1407)
* feat: CheCluster defaults

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-06-22 11:02:08 +03:00
Piotr Karatkevich c364ba4e93
feat(oauth-proxy): configuration enhancements for k8s config (#1400)
* feat(oauth-proxy): configuration enhancements for k8s config
2022-06-22 09:51:43 +03:00
David Kwon c87253d34e
Use errors middleware to redirect workspace url to dashboard on 5xx error code (#1392)
* Use errors middleware to redirect workspace url to dashboard on 5xx error code

Signed-off-by: David Kwon <dakwon@redhat.com>
2022-06-16 09:44:28 -04:00
Anatolii Bazko 0bc1049017
feat: CheCluster API v2 (#1324)
* feat: CheCluster API v2

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-06-09 11:35:01 +03:00
Anatolii Bazko 16c92ec513
chore: Don't update CheCluster CR spec to set OAuthClientName and OAu… (#1393)
* chore: Don't update CheCluster CR spec to set OAuthClientName and OAuthClientSecret fields

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-05-28 13:59:05 +03:00
Anatolii Bazko 5c4d9fa132
fix: Support internal endpoints (#1384)
* fix: Support internal endpoints

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-05-27 11:53:57 +03:00
Anatolii Bazko 293956fea3
fix: Deletes object with a legacy name to avoid mounting several ones… (#1383)
* fix: Deletes object with a legacy name to avoid mounting several ones under the same path

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-05-11 18:05:18 +03:00
Lukas Krejci dfcfc3efa7
The git certificate needs to be labeled as mounted to workspace. (#1375) 2022-05-06 10:21:06 +02:00
Lukas Krejci e5c0b73077
Namespace provisioning short name prefix (#1370)
Given that we only support 1 che instance in the cluster, we can shorten
the name prefixing significantly.
2022-05-02 14:02:18 +02:00
Anatolii Bazko 73bbeaafea
fix: Respect labels for workspace routes set in spec.server.CustomChe… (#1368)
* fix: Respect labels for workspace routes set in spec.server.CustomCheProperties[CHE_INFRA_OPENSHIFT_ROUTE_LABELS]
* Restart pods when configuration changed

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-05-02 13:10:06 +03:00
Lukas Krejci 33a59db047
fix: Use the labels used by the che-server to recognize workspace namespaces (#1359)
Use the app.kubernetes.io/part-of=che.eclipse.org and
app.kubernetes.io/component=workspaces-namespace labels to mark a namespace
as workspace namespace.

This should bring the operator and che-server in line with how they are
marking the managed namespaces.
2022-04-27 16:06:21 +02:00
Anatolii Bazko 51002ea5f2
chore: don't update chehost in CheCluster spec (#1340)
* chore: don't update chehost in CheCluster spec

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* Add missing files

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-03-16 11:37:40 +02:00
Anatolii Bazko a850b08a5d
chore: Don't set defaults into CheCluster CR (#1337)
* chore: Don't set defaults into CheCluster CR

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

* Add tests

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-03-15 14:12:08 +02:00
Anatolii Bazko 4ff511928d
fix: Remove code depending on devworkspace.enable field (#1321)
Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-02-16 12:16:56 +02:00
Angel Misevski 9a6b62f51d Fix test cases to accomodate using workspaceID in router name
Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2022-02-03 09:49:55 +01:00
Angel Misevski 44d610dd9c Avoid name collisions in traefik routers in gateway
Fix issue where all healthz routers are being created with the name
'<portnum>-healthz', preventing the traefik gateway from loading them
all at the same time.

Signed-off-by: Angel Misevski <amisevsk@redhat.com>
2022-02-03 09:49:55 +01:00
Lukas Krejci 12da7adeeb
feat: Support node selector and pod tolerations in devworkspaces (#1301)
Fixes #20884
* Upgrade to devworkspace operator with support for pod tolerations
* Implement additional logic in usernamespace controller to sync config
  from checluster CR to ns annotations understood by the dwo
* Add new fields to CheCluster CRD v1 and v2alpha1
* added support for the new fields in conversion methods between v1 and v2alpha1
2022-02-01 17:51:35 +01:00
Anatolii Bazko 4f08657509
chore: Drop backup/restore functionality (#1300)
* chore: Drop backup/restore functionality

Signed-off-by: Anatolii Bazko <abazko@redhat.com>
2022-02-01 15:51:26 +02:00