You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: components/central-application-gateway/README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -54,6 +54,8 @@ Central Application Gateway exposes:
54
54
- an external API implementing a health endpoint for liveness and readiness probes
55
55
- 2 internal APIs implementing a proxy handler accessible via a service of type `ClusterIP`
56
56
57
+
Application Gateway also supports redirects for the request flows in which the URL host remains unchanged. For more details, see [Response rewriting](../../docs/05-technical-reference/ac-01-application-gateway-details.md#response-rewriting).
To give user more control of workloads created by serverless controller, template concept was created.
3
+
The following decision has been made to templating concept.
4
+
5
+
## Metadata templating
6
+
This is the concept of dealing with metadata.
7
+
``` yaml
8
+
kind: Function
9
+
metadata: #Isolated, standalone field
10
+
...
11
+
spec:
12
+
template: #Old field that is being ignored
13
+
labels
14
+
annotations
15
+
templates:
16
+
functionPod:
17
+
metadata: ...
18
+
...
19
+
buildPod:
20
+
metadata: ...
21
+
...
22
+
```
23
+
We concluded that Validation Webhook needs to check whether given labels or annotations are conflicting with our own and check if something overwrites our labels.
After converting from "v1alpha1" we have duplicate fields and we have to decide how to handle them.
42
+
We use the "profile" ("preset") fields: "spec/resourceConfiguration/[function|build]/profile" (*P1*) or "metadata/labels/serverless.kyma-project.io/[function|build]-resources-preset" (*P2*) (deprecated).
43
+
For a custom (user defined) configuration we use the "resources" fields: "spec/templates/[functionPod|buildJob]/spec/resources" (*R1*) or "spec/resourceConfiguration/[function|build]/resources" (*R2*) (deprecated).
44
+
When the user fills both *P1* and *P2* (or *R1* and *R2*) we only take *P1* (*R1*). Otherwise we take the filled one.
45
+
The "profile" is propageted to the "resources". When we have both "profile" and "resources", the "profile" has a higher priority and overrides values in "resources".
46
+
47
+
Use cases:
48
+
* no profile, no resources -> we use default function resources and empty build resources,
49
+
* no profile, resources -> we use user definied resources,
50
+
* no profile, incomplete resources -> we use user definied resources (we don't fill the missing resources from the default profile),
51
+
* profile, no resources -> we use profile resources,
52
+
* profile, resources -> we use profile resources (we overwrite custom resources),
53
+
* profile, incomplete resources -> we use profile resources (we overwrite custom resources).
54
+
55
+
The `resourceConfiguration` object can be replaced by more specific object when we will create v1alpha3 to clean up deprecated fields.:
56
+
```yaml
57
+
resourceProfiles:
58
+
build: L
59
+
runtime: S
60
+
```
61
+
62
+
## Env
63
+
In v1alpha2 version we have `spec.env` field on root level which configures function pod envs.
64
+
This field will be copied/moved to `spec.templates.functionPod.spec.env`.
0 commit comments