Releases: cloudfoundry/korifi
0.12.0
What's Changed
CF API improvements
- More API endpoints supported:
GET /v3/info
is supported (#2914 - thanks @gogolok)- Stub
GET /v3/apps/:guid/features/:name
(#2357 - thanks @marsteg) - Initial support for
GET /v3/apps/:guid/processes/:type/stats
(#2340 - thanks @gogolok)
- Improved support for services in manifest (#3050), both formats are now supported:
services:
- my_service
- name: your_service
- Trailing slashes in the request URLs are accepted (#2749 - thanks @alperdedeoglu)
- Objects for user-provided services credentials are now supported (#2900)
- MEMORY_LIMIT and CF_INSTANCE_PORTS environment variables are now available to applications (#3081 and #3229 - thanks @marsteg)
- CF CLI 8.7.8+ now supported (#3142)
- Application restart is now synchronous (#3036)
- Uppercase characters now allowed in routes (#3210 - thanks @marsteg)
- Lower case memory limit units is now supported in manifests (#3231 - thanks @marsteg)
- Pre-release CF CLI versions is now allowed (#3255 - thanks @gogolok)
Korifi custom resources improvements
- The following Korifi custom resources now have a
Ready
condition (by setting theReady
condition, Korifi signals that the resource is reconciled and usable; interested parties could wait on that condition to ensure they are not getting an inconsistent state):CFDomain
CFRoute
CFServiceBinding
CFServiceInstance
CFApp
CFOrg
CFSpace
CFPackage
CFProcess
CFTask
AppWorkload
CFRoute
'sValid
andInvalid
status conditions have been removed in favour of theReady
condition
Misc
- Improved Istio support (#3156 - thanks @shanman190)
- Node selectors and tolerations can be configured for Korifi API and controllers deployments (#3308 - thanks @panevpla)
- Kind installer now uses contour dynamic provisioning
- Documentation improvements (thanks @spgreenberg, @beyhan)
- Dependencies bumped to latest
Full Changelog: v0.11.0...v0.12.0
⚒️ Ready to try it? See the install instructions!
0.11.0
What's Changed
- Korifi ingress (both api and workloads) is now leveraging the Gateway API.
- This means that it is now possible to deploy Korifi against any Gateway API compatible ingress controller.
- The
api.expose
andcontourRouter.include
helm values have become redundant so they are removed from the chart.
- The
VCAP_APPLICATION
env var attributes now includeuris
andapplication_uris
. Thanks @szeort
⚠️ Warning
- Enabling the Gateway API in Contour requires a restart of the Contour deployment. This causes a short period of downtime for the Korifi API and workloads. Once Contour is up and running all existing applications will imediately be reachable on the same routes.
- Contour supports the Gateway API since
v1.22.0
- Websocket support in Contour's Gateway API mode is available since Contour
v1.26
. It is possible to use older Contour versions, but websockets won't work.
🚨 Breaking changes
- A new required
networking.gatewayClass
helm value has been introduced to the chart as part of enabling the Gateway API
Full Changelog: v0.10.0...v0.11.0
⚒️ Ready to try it? See the install instructions!
0.10.0
What's Changed
- Hassle-free Korifi installer for kind clusters (thanks @beyhan for feedback and testing)
- New
systemImagePullSecrets
helm value to enable pulling korifi system images from private registries. - Improve documentation of known differences with CF-for-VMs (thanks @beyhan)
Full Changelog: v0.9.0...v0.10.0
⚒️ Ready to try it? See the install instructions!
0.9.0
What's Changed
- Support pushing docker images: more info in the docs
- The default clusterbuilder stack is updated to Ubuntu Jammy Jellyfish
- Fix: Not all contour resources get turned off causing the deployment to fail (thanks @a2geek)
- Make the helm jobs image configurable (thanks @wanddynosios)
🚨 Breaking changes
- The
global
section in the helm values has been removed. All values that used to be there are now top-level ones. See README.helm.md - The helm value
api.lifecycle.stagingRequirements
has been moved tostagingRequirements
- Removed redundant helm value
api.builderName
in favour ofreconcilers.build
Full Changelog: v0.8.1...v0.9.0
⚒️ Ready to try it? See the install instructions!
0.8.1
What's Changed
- Fix a bug in CFOrg deletion job that was preventing it from waiting for the org to get fully deleted (#2702)
- Fix a bug that would make app deletion block if its referenced domain is already deleted (#2707)
- Improve INSTALL.kind.md (#2710)
Full Changelog: v0.8.0...v0.8.1
⚒️ Ready to try it? See the install instructions!
Korifi 0.8.0
What's Changed
- Leverage Kpack's build caching by using a single
kpack.Image
per app. This will make most app pushes much faster! - Allow buildpack selection via
cf push -b
. Given we still don't support buildpack management, the only selectable buildpacks are the ones already present in yourkpack.ClusterStore
. - Support custom
label
s for User-provided Service Instances. This will make them more useful with frameworks like Spring. - Support
--strategy=rolling
forcf push
,restart
andrestage
. This will only work for apps pushed to Korifi v0.8 or newer, make sure you run a regularcf restart
to enable it on your existing apps. - Implement the get default domain endpoint for orgs.
- Implement jobs for all delete operations. The CLI will now wait until deletions are complete, instead of always returning immediately.
- Support updating an app name, its
lifecycle.data.buildpacks
andlifecycle.data.stack
. - More configuration options:
kpackImageBuilder.builderReadinessTimeout
to configure the grace period for builder readiness;api.lifecycle.stagingRequirements.buildCacheMB
to configure the size of the build cache;global.containerRegistrySecretNames
now supports multiple secrets.
- Fix
INSTALL.kind.md
(thanks @beyhan!)
Full Changelog: v0.7.1...v0.8.0
⚒️ Ready to try it? See the install instructions!
Korifi 0.7.1
What's Changed
- This fixes a bug which caused the list of orgs returned by
/v3/orgs
to be incorrect in some circumstances. - The
/v3/apps/<guid>/packages
handler is not supported (#2371). Thanks @saffronjam!
New Contributors
- @saffronjam made their first contribution in #2371
Full Changelog: v0.7.0...v0.7.1
Korifi 0.7.0
What's Changed
- We have improved our logging by making sure that each log message is emitted at the appropriate level (#2244) and making the log level configurable (#2181, #2266).
- Labels and annotations are now supported on all our resources.
- Korifi will now do its best to clean up its unused resources. In particular:
- Service accounts can now be used as Korifi users (#2295).
VCAP_APPLICATION
will now be available to apps running on Korifi (#2187), and it's possible to add custom extra values to it (#2198).- We now support the
cf unset-org-role
andcf unset-space-role
commands (#2106, #2113, #2117). - Our
404 Not Found
errors now comply with the Cloud Foundry error format and will be correctly handled by the CLI (#2346). - We support multiple apps in manifests (#2118).
- We fixed bugs causing unnecessary app restarts (#2133) and task reruns (#2134).
New Contributors
- @eghobo made their first contribution in #2105
- @kei-yamazaki made their first contribution in #2130
- @spgreenberg made their first contribution in #2165
- @wanddynosios made their first contribution in #2199
Full Changelog: v0.6.0...v0.7.0
⚒️ Ready to try it? See the install instructions!
Korifi 0.6.0
What's Changed
- We now support the use of alternative ingress controllers! See #2046, #2048 and #2073 for details.
- We have reduced our footprint by combining all our controllers into a single container image (see #2052).
- We have introduced the new
global.containerRegistryCACertSecret
Helm value to improve support for container registries with custom CAs (see #1967). - We now include memory and disk quotas in process stats.
- We now support any org or space name that is considered valid by traditional Cloud Foundry.
- We have reworked our HTTP layer to get rid of the deprecated
gorilla
dependency and replace it withchi
.
Full Changelog: v0.5.0...v0.6.0
⚒️ Ready to try it? See the install instructions!
Korifi 0.5.0
What's Changed
- We now support Amazon EKS and ECR! 📦 See the EKS install instructions for more details.
- The
global.packageRegistrySecret
Helm value is nowglobal.containerRegistrySecret
(see #1941). - The
api.packageRepositoryPrefix
andkpack-image-builder.dropletRepositoryPrefix
Helm values have been consolidated into a singleglobal.containerRepositoryPrefix
value (see #2029). - We now issue a warning when the Kubernetes user you logged in as is not a CF user (see #1834).
- We now support process metadata patching (see #1910).
- We now support creating, getting, updating and deleting domains (see #1944).
New Contributors
- @kirederik made their first contribution in #1839
- @benjaminguttmann-avtq made their first contribution in #1964
Full Changelog: v0.4.0...v0.5.0
⚒️ Ready to try it? See the install instructions!