{"id":19040660,"url":"https://github.com/cloudfoundry/korifi","last_synced_at":"2025-04-01T08:36:39.700Z","repository":{"id":36952452,"uuid":"394751388","full_name":"cloudfoundry/korifi","owner":"cloudfoundry","description":"Cloud Foundry on Kubernetes","archived":false,"fork":false,"pushed_at":"2024-10-29T10:12:38.000Z","size":66739,"stargazers_count":316,"open_issues_count":171,"forks_count":64,"subscribers_count":22,"default_branch":"main","last_synced_at":"2024-10-29T10:57:45.301Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudfoundry.png","metadata":{"files":{"readme":"README.helm.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-10T18:47:58.000Z","updated_at":"2024-10-29T10:12:41.000Z","dependencies_parsed_at":"2023-11-14T10:28:59.833Z","dependency_job_id":"265dd03a-37d7-45e9-b2dc-88f95ce24230","html_url":"https://github.com/cloudfoundry/korifi","commit_stats":null,"previous_names":["cloudfoundry/cf-k8s-controllers"],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry%2Fkorifi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry%2Fkorifi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry%2Fkorifi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry%2Fkorifi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudfoundry","download_url":"https://codeload.github.com/cloudfoundry/korifi/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246351019,"owners_count":20763231,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T22:24:23.487Z","updated_at":"2025-04-01T08:36:39.673Z","avatar_url":"https://github.com/cloudfoundry.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# Korifi Helm chart\n\nThis documents the [Helm](https://helm.sh/) chart for [Korifi](https://github.com/cloudfoundry/korifi).\n\nThe configuration for each individual component is nested under a top-level key named after the component itself.\nValues at the top-level apply to all components.\n\nEach component can be excluded from the deployment by the setting its `include` value to `false`.\nSee [_Customizing the Chart Before Installing_](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing) for details on how to specify values when installing a Helm chart.\n\nHere are all the values that can be set for the chart:\n\n- `adminUserName` (_String_): Name of the admin user that will be bound to the Cloud Foundry Admin role.\n- `api`:\n  - `apiServer`:\n    - `internalPort` (_Integer_): Port used internally by the API container.\n    - `port` (_Integer_): API external port. Defaults to `443`.\n    - `timeouts`: HTTP timeouts.\n      - `idle` (_Integer_): Idle timeout.\n      - `read` (_Integer_): Read timeout.\n      - `readHeader` (_Integer_): Read header timeout.\n      - `write` (_Integer_): Write timeout.\n    - `url` (_String_): API URL.\n  - `authProxy`: Needed if using a cluster authentication proxy, e.g. [Pinniped](https://pinniped.dev/).\n    - `caCert` (_String_): Proxy's PEM-encoded CA certificate (*not* as Base64).\n    - `host` (_String_): Must be a host string, a host:port pair, or a URL to the base of the apiserver.\n  - `image` (_String_): Reference to the API container image.\n  - `include` (_Boolean_): Deploy the API component.\n  - `infoConfig`: The /v3/info endpoint configuration.\n    - `custom`: `custom` attribute in the /v3/info endpoint\n    - `description` (_String_): `description` attribute in the /v3/info endpoint\n    - `minCLIVersion` (_String_): `minimum` CLI version attribute in the /v3/info endpoint\n    - `name` (_String_): `name` attribute in the /v3/info endpoint\n    - `recommendedCLIVersion` (_String_): `recommended` CLI version attribute in the /v3/info endpoint\n    - `supportAddress` (_String_): `support` attribute in the /v3/info endpoint\n  - `lifecycle`: Default lifecycle for apps.\n    - `stack` (_String_): Stack.\n    - `type` (_String_): Lifecycle type (only `buildpack` accepted currently).\n  - `nodeSelector`: Node labels for korifi-api pod assignment.\n  - `replicas` (_Integer_): Number of replicas.\n  - `resources`: [`ResourceRequirements`](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core) for the API.\n    - `limits`: Resource limits.\n      - `cpu` (_String_): CPU limit.\n      - `memory` (_String_): Memory limit.\n    - `requests`: Resource requests.\n      - `cpu` (_String_): CPU request.\n      - `memory` (_String_): Memory request.\n  - `tolerations` (_Array_): Korifi-api pod tolerations for taints.\n  - `userCertificateExpirationWarningDuration` (_String_): Issue a warning if the user certificate provided for login has a long expiry. See [`time.ParseDuration`](https://pkg.go.dev/time#ParseDuration) for details on the format.\n- `containerRegistrySecret` (_String_): Deprecated in favor of containerRegistrySecrets.\n- `containerRegistrySecrets` (_Array_): List of `Secret` names to use when pushing or pulling from package, droplet and kpack builder repositories. Required if eksContainerRegistryRoleARN not set. Ignored if eksContainerRegistryRoleARN is set.\n- `containerRepositoryPrefix` (_String_): The prefix of the container repository where package and droplet images will be pushed. This is suffixed with the app GUID and `-packages` or `-droplets`. For example, a value of `index.docker.io/korifi/` will result in `index.docker.io/korifi/\u003cappGUID\u003e-packages` and `index.docker.io/korifi/\u003cappGUID\u003e-droplets` being pushed.\n- `controllers`:\n  - `extraVCAPApplicationValues`: Key-value pairs that are going to be set in the VCAP_APPLICATION env var on apps. Nested values are not supported.\n  - `image` (_String_): Reference to the controllers container image.\n  - `maxRetainedBuildsPerApp` (_Integer_): How many staged builds to keep, excluding the app's current droplet. Older staged builds will be deleted, along with their corresponding container images.\n  - `maxRetainedPackagesPerApp` (_Integer_): How many 'ready' packages to keep, excluding the package associated with the app's current droplet. Older 'ready' packages will be deleted, along with their corresponding container images.\n  - `namespaceLabels`: Key-value pairs that are going to be set as labels on the namespaces created by Korifi.\n  - `nodeSelector`: Node labels for korifi-controllers pod assignment.\n  - `processDefaults`:\n    - `diskQuotaMB` (_Integer_): Default disk quota for the `web` process.\n    - `memoryMB` (_Integer_): Default memory limit for the `web` process.\n  - `replicas` (_Integer_): Number of replicas.\n  - `resources`: [`ResourceRequirements`](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core) for the API.\n    - `limits`: Resource limits.\n      - `cpu` (_String_): CPU limit.\n      - `memory` (_String_): Memory limit.\n    - `requests`: Resource requests.\n      - `cpu` (_String_): CPU request.\n      - `memory` (_String_): Memory request.\n  - `taskTTL` (_String_): How long before the `CFTask` object is deleted after the task has completed. See [`time.ParseDuration`](https://pkg.go.dev/time#ParseDuration) for details on the format, an additional `d` suffix for days is supported.\n  - `tolerations` (_Array_): Korifi-controllers pod tolerations for taints.\n  - `workloadsTLSSecret` (_String_): TLS secret used when setting up an app routes.\n- `crds`:\n  - `include` (_Boolean_): Install CRDs as part of the Helm installation.\n- `debug` (_Boolean_): Enables remote debugging with [Delve](https://github.com/go-delve/delve).\n- `defaultAppDomainName` (_String_): Base domain name for application URLs.\n- `eksContainerRegistryRoleARN` (_String_): Amazon Resource Name (ARN) of the IAM role to use to access the ECR registry from an EKS deployed Korifi. Required if containerRegistrySecret not set.\n- `experimental`: Experimental features. No guarantees are provided and breaking/backwards incompatible changes should be expected. These features are not recommended for use in production environments.\n  - `api`:\n  - `externalLogCache`:\n    - `enabled` (_Boolean_): Enable external LogCache\n    - `trustInsecureLogCache` (_Boolean_): Disable external log cache certificate validation. Not recommended to be set to 'true' in production environments\n    - `url` (_String_): The url of the exernal LogCache server\n  - `managedServices`:\n    - `enabled` (_Boolean_): Enable managed services support\n    - `trustInsecureBrokers` (_Boolean_): Disable service broker certificate validation. Not recommended to be set to 'true' in production environments\n  - `routing`:\n    - `disableRouteController` (_Boolean_): Disable route controller. Default value is 'false'.\n  - `uaa`:\n    - `enabled` (_Boolean_): Enable UAA support\n    - `url` (_String_): The url of a UAA instance\n- `generateIngressCertificates` (_Boolean_): Use `cert-manager` to generate self-signed certificates for the API and app endpoints.\n- `helm`:\n  - `hooksImage` (_String_): Image for the helm hooks containing kubectl\n- `jobTaskRunner`:\n  - `include` (_Boolean_): Deploy the `job-task-runner` component.\n  - `jobTTL` (_String_): How long before the `Job` backing up a task is deleted after completion. See [`time.ParseDuration`](https://pkg.go.dev/time#ParseDuration) for details on the format, an additional `d` suffix for days is supported.\n  - `replicas` (_Integer_): Number of replicas.\n  - `resources`: [`ResourceRequirements`](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core) for the API.\n    - `limits`: Resource limits.\n      - `cpu` (_String_): CPU limit.\n      - `memory` (_String_): Memory limit.\n    - `requests`: Resource requests.\n      - `cpu` (_String_): CPU request.\n      - `memory` (_String_): Memory request.\n- `kpackImageBuilder`:\n  - `builderReadinessTimeout` (_String_): The time that the kpack Builder will be waited for if not in ready state, berfore the build workload fails. See [`time.ParseDuration`](https://pkg.go.dev/time#ParseDuration) for details on the format, an additional `d` suffix for days is supported.\n  - `builderRepository` (_String_): Container image repository to store the `ClusterBuilder` image. Required when `clusterBuilderName` is not provided.\n  - `clusterBuilderName` (_String_): The name of the `ClusterBuilder` Kpack has been configured with. Leave blank to let `kpack-image-builder` create an example `ClusterBuilder`.\n  - `include` (_Boolean_): Deploy the `kpack-image-builder` component.\n  - `replicas` (_Integer_): Number of replicas.\n  - `resources`: [`ResourceRequirements`](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core) for the API.\n    - `limits`: Resource limits.\n      - `cpu` (_String_): CPU limit.\n      - `memory` (_String_): Memory limit.\n    - `requests`: Resource requests.\n      - `cpu` (_String_): CPU request.\n      - `memory` (_String_): Memory request.\n- `logLevel` (_String_): Sets level of logging for api and controllers components. Can be 'info' or 'debug'.\n- `networking`: Networking configuration\n  - `gatewayClass` (_String_): The name of the GatewayClass Korifi Gateway references\n  - `gatewayInfrastructure`: Optional GatewayInfrastructure property of the Gateway, see https://gateway-api.sigs.k8s.io/reference/spec/#gateway.networking.k8s.io/v1.GatewayInfrastructure for contents\n  - `gatewayPorts`: Ports for the Gateway listeners\n    - `http` (_Integer_): HTTP port\n    - `https` (_Integer_): HTTPS port\n- `reconcilers`:\n  - `app` (_String_): ID of the workload runner to set on all `AppWorkload` objects. Defaults to `statefulset-runner`.\n  - `build` (_String_): ID of the image builder to set on all `BuildWorkload` objects. Defaults to `kpack-image-builder`.\n- `rootNamespace` (_String_): Root of the Cloud Foundry namespace hierarchy.\n- `stagingRequirements`:\n  - `buildCacheMB` (_Integer_): Persistent disk in MB for caching staging artifacts across builds.\n  - `diskMB` (_Integer_): Ephemeral Disk request in MB for staging apps.\n  - `memoryMB` (_Integer_): Memory request in MB for staging.\n- `statefulsetRunner`:\n  - `include` (_Boolean_): Deploy the `statefulset-runner` component.\n  - `replicas` (_Integer_): Number of replicas.\n  - `resources`: [`ResourceRequirements`](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#resourcerequirements-v1-core) for the API.\n    - `limits`: Resource limits.\n      - `cpu` (_String_): CPU limit.\n      - `memory` (_String_): Memory limit.\n    - `requests`: Resource requests.\n      - `cpu` (_String_): CPU request.\n      - `memory` (_String_): Memory request.\n- `systemImagePullSecrets` (_Array_): List of `Secret` names to be used when pulling Korifi system images from private registries\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudfoundry%2Fkorifi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudfoundry%2Fkorifi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudfoundry%2Fkorifi/lists"}