CF API Kyma Module is providing a CF API to run on top of Kyma, using the open source Korifi project Once installed, one could use the cf cli to connect and deploy workloads.
Property | Optional | Default | Description |
---|---|---|---|
RootNamespace | Optional | cf | Root namespace for CF resources |
AppImagePullSecret | Optional | By default a localregistry will be deployed and used for application images | Dockerregistry secret pointing to a custom docker registry |
UAA | Optional | "https://uaa.cf.eu10.hana.ondemand.com" | UAA URL to be used for authentication |
CFAdmins | Optional | By default Kyma cluster-admins will become CF admins | List of users, which will become CF administrators.A user is expected in format sap.ids:<sap email> example sap.ids:samir.zeort@sap.com |
- A Kyma cluster preconfigured with UAA as OIDC provider
- Istio Kyma module installed
-
You need a Kyma environment which is configured with UAA as an OIDC provider, with following parameters
{
"administrators": [
"sap.ids:myfirstname.mysecondname@sap.com"
],
"autoScalerMax": 3,
"autoScalerMin": 3,
"oidc": {
"clientID": "cf",
"groupsClaim": "",
"issuerURL": "https://uaa.cf.eu10.hana.ondemand.com/oauth/token",
"signingAlgs": [
"RS256"
],
"usernameClaim": "user_name",
"usernamePrefix": "sap.ids:"
}
}
Use that script to generate a stable kubeconfig:
https://github.tools.sap/unified-runtime/trinity/blob/main/scripts/tools/generate-kyma-kubeconfig.sh
Note: that step requires an UAA client (uaac), which requires Ruby runtime
-
If Istio Kyma module is not installed, you can do it with:
make from this repository
make install-istio
Or directly with kubectl
kubectl label namespace cfapi-system istio-injection=enabled --overwrite
kubectl apply -f https://github.com/kyma-project/istio/releases/latest/download/istio-manager.yaml
kubectl apply -f https://github.com/kyma-project/istio/releases/latest/download/istio-default-cr.yaml
Deploy the resources from a particular release version to kyma
kubectl apply -f cfapi-crd.yaml
kubectl apply -f cfapi-manager.yaml
kubectl apply -f cfapi-default-cr.yaml
Wait for a Ready state of the CFAPI resource and read the CF URL
kubectl get -n cfapi-system cfapi
NAME STATE URL
default-cf-api Ready https://cfapi.cc6e362.kyma.ondemand.com
-
Set cf cli to point to CF API
cf api https://cfapi.cc6e362.kyma.ondemand.com
cf login --sso
Use CF cli to deploy applications as on a normal CF. The buildpacks used are native community buildpacks.
See the Contributing Rules.
See the Code of Conduct document.
See the license file.