Release notes
1.22.0
8 July 2024
This versions is compatible with Kubernetes versions 1.26 to 1.29
Breaking Changes
- Disabled private registries by default in nodes. Pull secrets, enabled by default since
1.20
, are used for deploying pods with private images - Removed the automatic binding between
cluster-admin
cluster role, and every service account created within a namespace managed by Okteto. You can find more information in our Upgrade Guide here.
New Features
- Support of AWS IAM Roles to configure Private Registries. Please see the specific documentation page to understand their configuration
- Add OIDC endpoint to the cluster overview panel in the Admin Dashboard
- Okteto CLI: Make Preview Environments global by default and allow non-admin users to create them
Improvements
- Admin users are now able to perform any operation on any user's namespace via UI, CLI or at the Kubernetes level
- Added configuration for developer permissions in global preview environments via role binding to the cluster role set by
serviceAccounts.roleBindings.previews
Helm setting - Developers now have read access to global preview environments at the Kubernetes level (after getting Kubernetes context with
okteto kubeconfig
) - Changed Admin Users' role selection label from "User" to "Developer" for consistency
- Improved Okteto Insights data collection time
- Reorganized 'user' helm setting to 'serviceAccounts' and include one setting to create a role binding for global previews. Please see our upgrade guide for details on how to adopt the changes
- Specified the credentials to be removed in the delete credential confirmation dialog
- Upgraded the Okteto CLI version to 2.29.0
- Okteto CLI: Admins can now perform operations in any user's namespaces via the CLI context
- Okteto CLI: Test artifacts defined under the
test
section are exported even if tests execution fails - Okteto CLI: Images defined in your Okteto manifest targeting dev registry (okteto.dev) and using a custom tag will now benefit from Okteto Smart Builds
Bug Fixes
- Fixed a rare issue where the Okteto Dashboard would render nothing during loading
- Fixed an issue in the webhook that was preventing a Virtual Service to keep the specified
exportTo
field - Fixed empty space in the Okteto Dashboard while data is being re-fetched
- Use globals.nodeSelectors.dev to filter Insights node data
- Extend support for globals.nodeSelector in the Autoscaler, node readiness and the nodes admin view
- Fixed panic in private-endpoints handler when deployed standalone and accessed for the first time
1.21.1
11 June 2024
This version is compatible with Kubernetes versions 1.26 to 1.29
Deprecation Notice
- Announced deprecation of Okteto Autoscaler. We recommend relying on cpu/memory requests to autoscale your cluster
Bug Fixes
- When Istio Virtual Services were enabled, Okteto's webhook no longer removes the property
exportTo
defined in a virtual service object - Fix a view refresh every few minutes in the
General
tab of the Admin Dashboard
1.21.0
7 June 2024
This version is compatible with Kubernetes versions 1.26 to 1.29
Deprecation Notice
- Announced deprecation of Okteto Autoscaler. We recommend relying on cpu/memory requests to autoscale your cluster
New Features
- The platform will now only obfuscate variables that are longer than 5 characters
- We've added the ability to set custom NodeSelectors
Improvements
- Show GitHub installations error notifications only when opening GitHub tab on Deploy dialog
- Handle suspended GitHub installation error on the branch selector in the Okteto UI
- Enable more error variant feedback on the GitHub BranchSelector in the Okteto UI
- Handle suspended Github app installation on the repositories selector in the Okteto UI
- Removed ingress name validation in the mutation webhook for ingress created as part of cert-manager challenges
- Handle HTTP 5xx errors more gracefully in the Okteto UI
- Upgraded the Okteto CLI version to 2.28.0.
- Okteto CLI: Changed .oktetodeployignore files to use .oktetoignore for remote executions of deploy and destroy, which allows more granularity to ignore files. You can add global ignore, but also specific ignores per operation
- Okteto CLI: Fix to correctly discover the git repository when a manifest is within a subfolder of the repository. This was preventing Smart Builds from detecting when an image was previously built
Bug Fixes
- Fix branch selector regression causing "bad-request" error
- Ignore ingress, virtual services, and routes without hosts
- Fix installer destroy operation when checking branch existence for private registries using SSH protocol
1.20.1
28 May 2024
This version is compatible with Kubernetes versions 1.26 to 1.29
Bug Fixes
- Updated the backend CLI to version 2.27.3 to resolve a panic issue that occurred when using Docker Compose with Okteto Manifests, specifically when the
image
field in a compose service referred to an environment variable
1.20.0
21 May 2024
This version is compatible with Kubernetes versions 1.26 to 1.29
Deprecation Notice
- Announced deprecation of compose file detection by name
New Features
- Enable Pull Secrets by default. If you do not wish to manage pull secrets, please see our upgrade guide to disable.
- Added onboarding guides to our documentation on how to get started with Okteto Insights
- Added the ability to assign a PriorityClass to Okteto components
- Added
globals
andbuildkit
tolerations to the Helm Chart and standardize their helm values
Improvements
- Namespaces without an owner will now be picked up by the Garbage Collector
- Removed ingress TLS validation to allow more flexibility in deploying your own ingress objects
- Renamed Variables to "Admin Variables" in the Admin section for clarity
- Included license issue warning badges on Admin and sidebar menu items
- Made error handling and feedback messages more consistent and actionable throughout the UI
- In the UI, we renamed all
/cluster/*
routes to/admin/*
- Updated CLI version in the backend to 2.27.2
- Okteto CLI: Changed the heuristic to mask variables in logs and comments that are longer that 5 characters
- Okteto CLI: Added support for variables expansion on
manifest.build.dockerfile
- Okteto CLI: Added support for variable expansion in variables defined in
.env
- for example"VAR1=${VAR2:-default}"
Bug Fixes
- Fixed branch selector behavior in UI when Github fails to fetch branches
- Fixed a GitHub integration issue where the dialog state wasn't updated after reconfiguring access through the popup for suspended installations
- Fixed an issue where personal tokens set to never expire were changed to a 180-day expiration by the next migration job
- Trial licenses are now recognized in the onboarding checklist
Removal Notice
- Support for Kubernetes 1.25 has been removed in this release.
1.19.4
28 May 2024
This version is compatible with Kubernetes versions 1.25 to 1.29
Bug Fixes
- Updated the backend CLI to version 2.26.2 to resolve a panic issue that occurred when using Docker Compose with Okteto Manifests, specifically when the
image
field in a compose service referred to an environment variable
1.19.3
15 May 2024
This version is compatible with Kubernetes versions 1.25 to 1.29
Deprecation Notice
- Support for Kubernetes 1.25 has been deprecated and will be removed in the next release.
Bug Fixes
- Fix pulling images from the okteto registry after sharing a namespace when pull secrets is enabled.
1.19.2
10 May 2024
This version is compatible with Kubernetes versions 1.25 to 1.29
Deprecation Notice
- Support for Kubernetes 1.25 has been deprecated and will be removed in the next release.
Bug Fixes
- Fix pulling images from ECR private registries in dev namespaces when pull secrets is enabled.
1.19.1
26 April 2024
This version is compatible with Kubernetes versions 1.25 to 1.29
Deprecation Notice
- Support for Kubernetes 1.25 has been deprecated and will be removed in the next release.
Improvements
- Okteto CLI: the scope of the breaking change introduced in 1.19.0 has been reduced.
okteto deploy
will ignore host volumes of Docker Compose services only if the service defines abuild
section. Please see our community post for more details
Bug Fixes
- Resolved a bug with migrations occurring during every Okteto upgrade. Tokens that were set to never expire were inadvertently being modified to expire in 180 days. This fix ensures that token expiration times are not altered during Okteto upgrades
1.19.0
16 April 2024
This version is compatible with Kubernetes versions 1.25 to 1.29
Deprecation Notice
- Support for Kubernetes 1.25 has been deprecated and will be removed in the next release.
New Features
- Okteto Insights: Pod v2, Build, Deploy, User, Namespace, and Preview metrics are now available
- Smart Builds now uses
build: context
instead ofproject: commit
to detect if an image was already built - Add Grafana to Admin UI to support Okteto Insights for SaaS plan users
Breaking Changes
- Okteto CLI:
okteto deploy
will ignore host volumes defined by Docker Compose services. Please see our community post for more details
Improvements
- Update buildkit to v0.12.5
- maxNamespaces quota doesn't apply to the
okteto-bot
user - Introduced the OKTETO_IS_PREVIEW_ENVIRONMENT variable to identify when a deployment is happening in a preview environment
- Hide passwords when creating new private registry credentials
- Add CLI environment variable to enable or disable local Docker credentials when building images. This setting defaults to
true
- Support for the compose.yml and compose.yaml file extensions
Bug Fixes
- Okteto CLI: Add CORS PNA to support browser logins from the Okteto CLI
- Fix endpoint links in the UI that span the full width of container and break layout
OKTETO_COMPOSE_VOLUME_AFFINITY_ENABLED
feature flag variable to disable the "force node" behavior when pods share the same PVC- Allow
okteto-bot
to use GitHub integration when deploying repositories - Fix a wrong redirect when a preview doesn't exist
- Make docker config static a pull secret
- Translate compose annotations into Kubernetes labels. We had been translating compose labels into k8s annotations but not viceversa
1.18.2
20 March 2024
This version is compatible with Kubernetes versions 1.25 to 1.28.
Bug Fixes
- Dev environments and preview environments deployed from private repositories using Admin Access Tokens were not able to clone the repository even when the GitHub App had access to it.
1.18.1
12 March 2024
This version is compatible with Kubernetes versions 1.25 to 1.28.
Features
- Support a feature flag to disable the logic that forces pods with a shared volume to be scheduled on the same node (
unsupported.forceNodeToPodsWithSamePVCs: false
).
1.18.0
27 February 2024
This version is compatible with Kubernetes versions 1.25 to 1.28.
Features
- Implementation of Admin Access Tokens
Improvements
- Added instructions for deploying Okteto with ArgoCD
- Change default value of ingress.forceIngressSubdomain to false. By default, Okteto won't force deployed applications to match Okteto's subdomain
- Enable by default cluster policy for registry. Enables any of your Okteto users to have read access to any image built in other namespaces. To limit this to the previous behavior, set
registry.pullPolicy
tonamespace
- The Okteto CLI used for Pipeline installation has been upgraded to version 2.25.2
- Upgrade BuildKit to
0.12.5
Bug Fixes
- Hide clear button if namespace search input is empty
- In deploy dialog, fix wrong filter when canceling current repository on SelectRepository
- Fix filtered namespace view where parent resources were not expanded
- Fix closing create access token dialog from keyboard
- Fix Scale to Zero Period showing wrong value in Previews UI
- Fix wrong "Waking Up" status when switching to a "Sleeping" namespace
- Properly render
code
nodes as inline elements inside a list item - Fix BuildKit configuration behind our ingress-controller not working when BuildKit had more than 1 replica
1.17.0
23 January 2024
This version is compatible with Kubernetes versions 1.25 to 1.28.
Features
- Enable search in namespace resources UI
- Enable admins to transfer namespace ownership
- Add Pod metrics to Okteto Insights
Improvements
- Hoist Personal Access Tokens menu from Setup to Settings
- Rename Launch to Deploy in the Okteto UI
- Rename Secrets to Variables under both Settings and Admin sections. This rename is for consistency in the UI and delivers no change in functionality
- Support for multi-line secrets
- Improve buildkit cache reloading on helm upgrades. Please note this upgrade will imply a restart in the build cache
Bug Fixes
- Surface buildkit errors through our ingress controller. Will result in better build error messages
- The Okteto Insights endpoint was not exposing build metrics when the Helm release name included the word "okteto"
- Fixed a scenario where the runtime of node containers could restart if the Okteto daemon pod were to be recreated, potentially impacting active 'okteto up' sessions
1.16.2
17 January 2024
This version is compatible with Kubernetes versions 1.25 to 1.28.
Bugfixes
- Fixed a scenario where node container runtimes could restart if the Okteto daemon pod were to be recreated, potentially impacting active 'okteto up' sessions.
1.16.1
10 January 2024
This version is compatible with Kubernetes versions 1.25 to 1.28.
Bugfixes
- The Okteto CLI used for Pipeline installation has been upgraded to version 2.23.3. It includes a fix for scenarios where image builds were failing because an image was not being found in the global registry.
- The Okteto Insights endpoint was not exposing build metrics when the Helm release name included the word "okteto"
1.16.0
20 December 2023
This version is compatible with Kubernetes versions 1.25 to 1.28.
Features
- Add
okteto_usage_build_duration_seconds
build metrics to okteto insights. More info here - A diagnostics tool is now provided to help troubleshoot installations. More info here
- The Okteto CLI used for Pipeline installation has been upgraded to version 2.23.1
- Move garbage collection of
okteto up
based on last synced file behind a feature flag. More info here - Okteto now runs in ARM architecture. This is currently in beta.
Improvements
- Okteto garbage collector cronjob now resolves buildkit and ingress hosts to their internal IPs
- Registry Credentials cronjob only update dockerconfig secret if the credentials change.
- Okteto Daemon now update kubelet docker config.json file in nodes reactively when the static docker config secret changes. Bumps okteto/daemon to 0.5.1
- Fix network policies configuration to limit buildkit access to the nginx controller
- Add Okteto Insights Token to the Admin UI
- Updated documentation structure to make content easier to navigate and find. Release notes can now be found at https://www.okteto.com/docs/release-notes, and chart values reference can be found at https://www.okteto.com/docs/reference/helm-chart-values/. All documentation changes are listed here.
1.15.1
1 December 2023
This version is compatible with Kubernetes versions 1.25 to 1.27.
Bugfixes
- Fix okteto daemon restart when AWS ECR private registry credentials are defined
1.15.0
22 November 2023
This version is compatible with Kubernetes versions 1.25 to 1.27.
Removal Notice
Kubernetes 1.24 is no longer supported
Improvements
- Upgrade ingress-nginx to 1.9.4 (Helm chart version 4.8.3)
- Enabled chroot mode by default in both ingress-nginx controllers managed by Okteto.
okteto up
sessions are now garbage collected if no files have been synced for an hour
Bug Fixes
- Fallback to default branch for destroy installer jobs
- Smart builds work on repositories using
.gitmodules
containing submodules cloned via ssh key - Fix wrong "Scale to Zero Period" value in the UI of Admin → Namespaces
Features
- The Okteto CLI used for Pipeline installation has been upgraded to version 2.22.3
1.14.3
1 December 2023
This version is compatible with Kubernetes versions 1.25 to 1.27.
Bugfixes
- Fix okteto daemon restart when AWS ECR private registry credentials are defined
1.14.2
8 November 2023
This version is compatible with Kubernetes versions 1.24 to 1.27.
Bugfixes
- Fix private registry credentials integration for registries with custom ports (other that the default 443)
1.14.1
27 October 2023
This version is compatible with Kubernetes versions 1.24 to 1.27.
Improvements
- Okteto internal registry is now resolved in private credentials exchange
Bugfixes
- Namespace list in the UI is now scrollable and displays all namespaces.
- Fix login with openid through the okteto CLI with custom "audience" and "resource"
1.14.0
25 October 2023
This version is compatible with Kubernetes versions 1.24 to 1.27.
Deprecation Notice
- Helm charts catalog is no longer available in the Okteto UI. For alternative approach to deploy Helm charts see https://www.okteto.com/blog/making-your-helm-packaged-applications-ready-for-cloud-native-development-with-okteto/
- Defining Private Registry credentials in Helm has been deprecated. Private Registry Credentials are now natively supported by Okteto and configurable in the Okteto UI. Credentials defined in Helm will be automatically migrated. More info here
- Support for Kubernetes 1.24 has been deprecated and will be removed in the next release.
Features
- Added a new
/metrics
endpoint to expose prometheus node metrics data. More info here. - Added native support for Private Registry Credentials, configurable directly in the Okteto UI. More info here.
- The Okteto CLI used for Pipeline installation has been upgraded to version 2.21.0
- Add support for Kubernetes 1.27
Improvements
- Upgrade ingress-nginx to 1.8.2 (Helm chart version 4.7.2)
Bugfixes
- Reduce file permission for okteto-ca-pemstore certificate file in jobs
- Reduce expiration threshold for trial licenses from 60 to 7 days
1.13.0
27 September 2023
This version is compatible with Kubernetes versions 1.24 to 1.26.
Breaking Changes
Okteto requires you to use a valid license as part of the installation. If you were running a previous version of Okteto and you don't have a valid license, signup for our 30 day free trial or reach out to us.
Improvements
- Updates to Cloud Secret now take immediate effect
- The Okteto CLI used for Pipeline installation has been upgraded to version 2.20.0
- Pipeline installations now use dynamic kubernetes tokens to talk to the kubernetes api via the ClientAuthentication API.
Bugfixes
- Documentation now links the exact version version in the docs
- During installation/upgrade the current version of Okteto is no longer tied to Helm
.Chart.Version
and.Chart.AppVersion
- Improve platform and kubernetes version attributes resolution in Telemetry cronjob
1.12.1
14 September 2023
This version is compatible with Kubernetes versions 1.24 to 1.26.
Bugfixes
- Update Kubernetes internal dependencies to fix a possible crash/panic when Okteto lists the cluster API Resources. This could happen when destroying the content of a namespace or during Preview Environment operations.
- Includes the following commit from
kubernetes/client-go
: https://github.com/kubernetes/client-go/commit/5ebee1886e7bc6891833dd92c200f4f5258889c0.
- Includes the following commit from
1.12.0
31 August 2023
This version is compatible with Kubernetes versions 1.24 to 1.26.
Breaking changes
- Kubeconfigs downloaded from the Okteto web UI now require Okteto CLI 2.15 or higher to use dynamic tokens for authenticating against Kubernetes.
Features
- The Okteto CLI has been upgraded to version 2.19.2.
- The Admin view has been redesigned with a new vertical tab column.
- Added "Registry Credentials" to the Admin view to display configured private registry information. This provides visibility into the private registries in use for your Okteto instance (username/password and AWS Access/Secret only for now)
Improvements
- The Preview list in the Admin view now shows time units in the Garbage Collector settings description.
- When waking a Namespace from the Namespace, Preview, or Admin views, the UI now provides feedback for the request.
- When a GitHub user does not belong to the allowed GitHub organization and attempts to log in, a specific error is now shown.
- When using a GitHub App for authentication that is not yet installed in the GitHub organization and an allowed GitHub organization filter is set, a specific error is now shown.
- Resources for Nodes in the Admin view are now correctly aligned.
- Priority Classes can now be specified via
priorityClassName
sub-property for the following components:api
,buildkit
,defaultBackend
,frontend
,registry
andwebhook
.
1.11.1
8 August 2023
Bugfixes
- When deploying compose files, Okteto built-in environment variables (e.g OKTETO_BUILD_XXX) were not expanded correctly.
1.11.0
2 August 2023
Improvements
- Upgraded buildkit to v0.11.6.
- Upgraded ingress-nginx to 4.7.1.
- Underlying Kubernetes cluster version is now shown in the Admin section.
- When a GitHub App private key is not valid, a warning message is now shown in a components' logs and when attempting to authenticate or perform a GitHub-related action.
- Okteto Web UI documentation links now point to the same version used by the platform instead of the latest version.
- Automatic role binding for service accounts can now be disabled.
- Added configuration setting in the daemonset to disable the configuration of private registry credentials in the nodes
Bugfixes
- When hovering over logs in the Okteto Web UI, a wrong timestamp was shown.
- Istio's Virtual Service now show only their own dedicated endpoints when using "dev.okteto.com/endpoints" annotation.
1.10.0
5 July 2023
Removal Notice
Kubernetes 1.23 is no longer supported.
Features
- Kubernetes supported versions: 1.26, 1.25 and 1.24.
- Now you can select an expiration period when creating a new Personal Access Token.
- Administrators have the ability to wake up, put to sleep, or mark any preview environment as keep-awake.
- Upgraded ingress-nginx to 4.6.
Improvements
- Kubernetes Annotations can now be added to:
- Default self-signed wildcard certificate via
.Values.wildcardCertificate.annotations
. - Internal self-signed webhook certificate via
.Values.webhook.internalCertificate.annotations
. - Dockerconfig via
.Values.secret.annotations
.
- Default self-signed wildcard certificate via
- Kubernetes Labels can now be added to:
- Dockerconfig via
.Values.secret.labels
.
- Dockerconfig via
Bugfixes
- When using the default
.Values.subdomain
, pending Domain installation task is now correctly shown. - Cert-manager annotations are now allowed in developer ingresses.
- When a license is not specified, the Starter plan is displayed instead of Unknown.
- Upgraded the Okteto CLI version to 2.16.5.
- When using
okteto deploy --remote ...
with private certificates, internal registry requests will now work correctly.
- When using
- We've added additional form validation to the Launch Dev Environment modal so invalid repo URLs will no longer be accepted and allow the modal to close.
- Pipeline destroy actions now use the environment variables used during deployment.
1.9.1
22 June, 2023
Bugfixes
- Upgrade ingress-nginx from 4.5.0 to 4.5.2 to include the following bugfix:
- Fix regression when using regex in ingress path https://github.com/kubernetes/ingress-nginx/issues/9616
1.9.0
12 June, 2023
Deprecation Notice
- Support for Kubernetes 1.23 has been deprecated and will be removed in the next release.
Features
- Added support for Kubernetes v1.26. All supported versions: 1.26, 1.25 and 1.24.
- Upgraded the Okteto CLI version to 2.16.3
- Last user interaction with Okteto is now available at the Admin dashboard, under the Users section.
- Support to access Okteto on
127.0.0.1
- Upgrade ingress-nginx to 4.5
okteto deploy --remote
supports when Okteto has self-signed certificates and private Certificate Authorities (CAs).
Improvements
- Enabled gzip compression for frontend web server
Bugfixes
- Improve app chunk loading and error handling
- Uninstall Helm installations from dev environments on "destroy all" operations
- Deactivate any containers in development mode on "sleep namespace" operation
- Environment variables defined for a deploy are also available for destroy operation
- Container image layer manifest sometimes got corrupted when being uploaded to the Registry, causing "500 Internal Server Error" on following build requests to Buildkit.
- When using dual ingress controller (default), requests body size was limited to 1MiB. This has been fixed and increased to 60MiB.
1.8.3
15 Jun, 2023
Bugfixes
- When using dual ingress controller (default), requests body size was limited to 1MiB. This has been fixed and increased to 60MiB.
1.8.2
30 May, 2023
Bugfixes
- Upgraded the Okteto CLI version to 2.15.4.
- Build optimization now also considers the environment variables used in build args when determining when to rebuild an image.
1.8.1
24 May, 2023
Bugfixes
- Fixed an issue affecting deletion of dev and preview environments when using custom Okteto manifests. The destroy operation did not evaluate the custom manifest used during deployment, which meant the destroy commands were not executed.
- Upgraded the Okteto CLI version to 2.15.3.
- Build optimization now considers environment variables used in build args to determine when to rebuild an image.
- Fixed a regression which was preventing the deploy dialog from loading the list of GitHub repositories for new users when the authentication provider was GitHub.
1.8.0
10 May, 2023
Before you upgrade
Okteto 1.8 includes a change in the ingress architecture. If you're using your own ingress controller instead of the ingress-controller embedded with Okteto chart, please checkout the updated section about "How to use your own ingress controller".
Breaking changes
- The default value for the buildkit service session affinity is now
None
. To keep usingClientIP
assessionAffinity
you need to setservice.sessionAffinity: ClientIP
in your buildkit configuration.
Deprecation Notice
- Support for Kubernetes 1.22 has been deprecated and will be removed in the next release.
Features
- Kubernetes supported versions: 1.25 (upgrade guide), 1.24 and 1.23.
- Support for custom labels and annotations in ingresses managed by Okteto.
- Upgraded the Okteto CLI version to 2.15.2
- Okteto CLI 2.15.2 enables the optimisation removed at Okteto CLI 2.14.3. Now we calculate a hash for a given commit with the info around the build.
- Oketo Self-Hosted will now show the installation setup guide by default
- External resources can now be destroyed from the Okteto UI
- External resources now supports additional icons
- Ingresses are now served through two ingress-controllers instances, enabling flexible configuration and improving connection stability.
ingress-nginx
will continue to be the main gateway for all inbound traffic to Okteto, but will stop processing individual users' ingresses. Instead it will forward users' ingresses to the newokteto-nginx
.okteto-nginx
sits behindingress-nginx
and it process exclusively users' ingresses.- For additional configuration of both instances, please check the ingress-controller configuration section.
- Okteto Ingress defaultBackend is now deployed separately of
ingress-nginx
orokteto-nginx
.
Improvements
- All external services created or updated by Okteto will now have the
dev.okteto.com/namespace
label - Improved the performance of the query for retrieving endpoints for a preview environment using the
dev.okteto.com/namespace
label - Support baggage header for istio divert driver
- Remove the
email
field from the helm values file. It is is now provided by the license - Divert virtual service transformation is now done at the mutation webhook by adding the annotation to the virtualservices
- The frontend app now uses proper browser history routing instead of hash routing
- Catalog items are now sorted, by default, in the same way in both the admin dashboard and a developer's deploy/redeploy modal
- Using personal repositories from Bitbucket is now possible as we've addressed an issue with restricted characters in repository names
- Persistent spaces can no longer be put to sleep from the admin dashboard
- Improve text readability on deploy resources list
Bugfixes
- Custom endpoints annotation
dev.okteto.com/endpoints
is now mapped with the correct service of an ingress - Fix preview delete confirm modal stating "Delete namespace"
- Tabs in the admin panel are now appropriately responsive for smaller screens and resolutions. The last tabs will now wrap properly
- External Resources markdown inline code is now rendered correctly as inline instead of a fenced code block
- Translation browser extensions causing blank screens due to modifying DOM
- Show endpoints coming from virtual services in the Preview List view
- Move cache headers from
meta
to nginx soCache-Control
headers are applied correctly - Show "managed by" message only when adding a repository to previews and not when launching a developement environment
- Force non-breaking spaces for leading whitespace on logs
- Fix panic produced when deploying a repository with trailing slash
- Add disable state to external resources when being destroyed
1.7.1
21 April, 2023
Bugfixes
- Upgraded the Okteto CLI version to 2.14.3.
- Okteto CLI 2.14.0 introduced an optimization to build only once the image for a given commit. Okteto CLI 2.14.3 disables this optimization while we fix some inconsistencies around its behavior
1.7.0
12 April, 2023
Removal Notice
- Kubernetes 1.21 is no longer supported.
Deprecation Notice
The cloud.provider
and cloud.secret
keys in the Helm chart are now deprecated and they will be removed in the future 2.x release. Instead, you can now use registry.storage.provider
and registry.secret
to configure the registry to use external storage. This change is backward compatible: the old configuration keys will continue to work until they are removed in 2.x. You can follow our upgrade guide.
Features
- Kubernetes supported versions: 1.24, 1.23 and 1.22.
- Support for the annotation dev.okteto.com/endpoints to customize the endpoints shown in the Okteto UI.
- Support for configuring the service account of buildkit.
- Support for token-based authentication to simplify the installation of Okteto Self-Hosted.
- Personal Access Tokens will automatically expire after 180 days. For existing tokens, the expiration date will be set to 180 days from when your Okteto instance is upgraded to 1.7 or newer versions
- Upgraded the Okteto CLI version to 2.14.2
- Upgraded ingress-nginx to 4.3.0
- You can now delete external resources from the UI
- The default installation of Okteto doesn't require an external storage for the registry. It now uses filesystem storage by default
- The default installation of Okteto doesn't require a PVC for BuildKit. It now uses filesystem storage by default
Improvements
- When
buildkit.ingress.enabled
is true, BuildKit is exposed in thebuildkit.service.port
instead of port 1234. This makes it easier to use your with other ingress controllers - We optimized the redeploy dialog experience. Infomation loads faster in the dialog, specially when the source is GitHub
- Improved confirmation dialogs messages
- When your Okteto instance doesn't have an auth provider configured, the login screen shows a message with a link to the documentation on how to configure it
- Pod Security Policies are not installed if they are not available in the cluster
Bugfixes
- When redeploying a dev environment from the UI, there was a race condition that was preventing to use the right environment configuration (manifest, variables, branch, etc...)
- Sleeping resources now renders
No output.
logs instead ofLoading output...
- Install and destroy jobs are retried when they fail due to transient errors during their execution
- Avoid panics in private endpoints when the user is not authenticated
Sleep
option is not available in the list of namespace actions when the namespace is persistent- Fixed a problem when destroying dev environments from the UI when the manifest has defined an
image
property within thedestroy
section that was preventing the dev environment to be destroyed - Fixed a problem when destroying dev environments with a variable declared in a multiline
destroy
command - External resources were not being grouped under the corresponding dev environment when there was an error in the deployment of the environment
1.6.0
15 March, 2023
Breaking changes
This version comes with a breaking change. The default ingress class for ingresses managed by Okteto changed from nginx
to okteto-nginx
to prevent collisions with other controllers that might be already installed in the cluster. There is no action required from the user, all ingresses managed by Okteto will be automatically updated as part of the upgrade.
If you want to continue to use the previous ingress class (nginx
), you can do it by setting the following values in your helm values file:
ingress:
class: nginx
oktetoIngressClass: nginx
ingress-nginx:
controller:
ingressClass: nginx
ingressClassResource:
name: nginx
controllerValue: "k8s.io/ingress-nginx"
In some cases, there is a race condition recreating the controller pods in which a controller pod starts before the new ingress class is created in the cluster and that generates 404 errors when accessing Okteto or dev environments. For that reason, we recommend to rollout the ingress controller deployment to avoid this issue (kubectl rollout restart deployment <ingress-controller-deployment-name> -n okteto
).
Deprecation Notice
- Support for Kubernetes 1.21 has been deprecated and will be removed next release.
Features
- Kubernetes supported versions: 1.24, 1.23 and 1.22.
- Update the Okteto CLI version to 2.13.0
- Support custom quotas for node port and load balancer service types
- Public override support for self-signed certificates and bring your own certificate
- The wake operation will now wake up dependent services first, following the same order as when the environment was created.
- Add support for dynamic endpoints for external resources
Improvements
- Several improvements in the UI to keep the status updated accordingly with the status in user's dev environments
- Allow users to access to namespaces that are being terminated to see the operation logs
- Added input autofocus in several dialogs
- The "Create Namespace" button is now enabled immediately after you start writing the name of the namespace in the "New Namespace" dialog.
- You can now filter the available branches in the GitHub deploy dialog
- Simplified the admin dashboard by removing duplicated titles in every section.
- Do not autodestroy GC job when it ends. Last 3 executions of the job will be kept, so job logs can be accessed
- Private endpoints cookie is now set in the backend and specified as "httpOnly"
- Upgrade Reloader dependency to 1.0.5
Bugfixes
- Skip volume snapshots deletion as part of destroy all operation if "include volumes" check is not selected
- Fix "Destroy all", "Delete namespace" and "Wake namespace" operations when using private CAs or self-signed certificates
- Display the correct operation name in logs when deleting a namespace or destroying all resources within a namespace
- Avoid duplicated log lines when the browser visibility changes
- Self-signed certificate is recreated when subdomain or publicOverride changes after an upgrade
- Fixed view transition when a destroy namespace operation is retried
- Fixed missing custom icons on external resources
- Fixed autofocus on confirm dialogs
- GC deletes pods stuck in
Failed
phase withNodeAffinity
reason
1.5.1
6 March, 2023
Bugfixes
- Fixed an issue that prevented users from authenticating against the registry when using a separate certificate for the registry (
.Values.registry.ingress.tlsSecret
).
1.5.0
14 February, 2023
Features
- Kubernetes supported versions: 1.23, 1.22 and 1.21.
- You can now define an icon for every endpoint in your external resources list
- Add support for registry cloud provider storage using:
Improvements
- Make env var values editable on deploy/redeploy
- Filter repositories results by search term
- Delete button is now disabled in the personal namespace
- Reduced load time when opening Github redeploy dialog
- Added antiAffinity configuration for PODs with label
dev.okteto.com/affinity
- Added granular definition support for networkPolicies created by Okteto.
Bugfixes
- When injecting host alises to go through internal network to buildkit, registry and api, don't duplicate entries for same IP. Instead, pass the list of hostnames for the IP
- Remove non-existent External Resources status that caused Deployments to show as "Deployed" with a red error badge
- "Get Started" button is not active while running a "destroy all" job
- Fix namespace wake up when endpoint requests is sent to paths other than root.
- Keep ingress class on wake if ingress class is different than "sleeping"
- Ignore read only Kubernetes API Extension Servers (e.g. metrics.k8s.io) if unavailable on destroy all job runs.
- When using Divert, some scenarios may cause its ingress configuration to be dropped
- Don't show a pointer cursor type in log lines
- Autopreviews are now being deleted when PR is merged or closed
- Correctly alignment of non private/divert endpoints and repository at resource details section.
- Removed unused configuration values related to cert-manager in the Helm chart
- Fixed issue in the OpenID configuration that prevented using ADFS as the identity provider
- Get claims from access token when
ADFS
resource is given - Added support for volume snapshots in EKS 1.23
1.4.3
6 March, 2023
Bugfixes
- Fixed an issue that prevented users from authenticating against the registry when using a separate certificate for the registry (
.Values.registry.ingress.tlsSecret
).
1.4.2
February 7, 2023
Bugfixes
- Fixed issue on instances with self-signed certificates or private CA that prevented the destroy all and destroy namespace actions to work properly.
1.4.1
February 1, 2023
Bugfixes
- Fixed issue that caused the autoscaler to crash when parsing ingresses without the
ingressClassName
attribute.
1.4.0
January 19, 2023
Features
- Kubernetes supported versions: 1.23, 1.22 and 1.21.
- You can now define external resources in your Okteto manifest. Use this to include resources that exist outside of your Okteto namespace like databases, message brokers, serverless functions, dashboards, etc.
- You can now show virtual services endpoints in the Okteto UI
- Update okteto cli version to 2.11.1
Improvements
- The commands defined in the
destroy
section of the Okteto manifest will now be executed when destroying a namespace or preview environment - You can now retry and force namespace deletion in the UI
- When deleting a namespace/preview, its name will appear in the delete pop-up notification
- Sleeping a namespace using the UI now displays a confirmation dialog
- The catalog section of the Deploy dialog now includes a search bar
- The user-provided NGINX configuration snippet (the
nginx.ingress.kubernetes.io/configuration-snippet
annotation) will now get merged with Okteto's configuration snippet - By default, pod requests are no longer modified by Okteto
- Updated the
crd
configuration in the Helm chart to follow recommended practices for CRD management - You can now define custom affinities for dev containers and installer jobs in helm config
- You can now define custom resources (requests and limits) for installer jobs
- You can now define tolerations and node selector for the telemetry cronjob
- You can now override the images of the daemon and autoscaler