Skip to content

Commit

Permalink
chore: Update to Kustomize v5 syntax (kserve#149) (opendatahub-io#68)
Browse files Browse the repository at this point in the history
### Motivation
The main motivation for this update is to keep our manifests up to date
with Kustomize v5. This ensures that we are using the latest syntax,
which improves the compatibility and maintainability of our Kubernetes
configurations.

### Modifications

#### 1. Replacements Section:
- Added a replacements section to dynamically change values in the
deployment configuration.
- Corrected the field path to ensure the replacement does not break when
patches are used.
- Specifically, it replaces the environment variable value in the
model-mesh deployment with the service name.

**Old Syntax:**
```
vars:
  - name: MM_SERVICE_NAME
    objref:
      kind: Service
      name: model-mesh
      apiVersion: v1
    fieldref:
      fieldpath: metadata.name
```
**New Syntax:**
```
replacements:
- source:
    kind: Service
    name: model-mesh
    fieldPath: metadata.name
  targets:
  - select:
      kind: Deployment
      name: model-mesh
    fieldPaths:
    - spec.template.spec.containers.0.env.[name=MM_SERVICE_NAME].value
```
#### 2. Patch Paths:
- I updated the commented-out patches section to use the correct path
syntax when they are needed.
```
# patches:
#  - path: patches/etcd.yaml
#  - path: patches/logger.yaml
#  - path: patches/tls.yaml
#  - path: patches/uds.yaml
#  - path: patches/max_msg_size.yaml
#  - path: patches/prometheus_metrics.yaml
```
### How I Tested
To ensure the correctness of these changes, the following steps were
taken:

1. Ran the kustomize build command on the original manifests to produce
the current state of the resources.
2. Updated to Kustomize v5 labels.
3. Ran the kustomize build command again on the updated manifests.
4. Compared the output of the kustomize build command from both the
original and updated manifests.
5. Verified that there was no difference between the outputs.

Gist of all kustomize build pre-changes and post-changes:
https://gist.github.com/KillianGolds/522e22734d547a90e69a619498ab71ca

### Result
These changes ensure that our Kustomize configuration is up to date with
version 5. Everything works as it should, with no changes to
functionality other than updated syntax and corrected field paths for
replacements and patches.

---------

Signed-off-by: Killian Golds <[email protected]>
Co-authored-by: Killian Golds <[email protected]>
  • Loading branch information
pull[bot] and KillianGolds authored Aug 22, 2024
1 parent 13ae7c8 commit 4ae7c4a
Showing 0 changed files with 0 additions and 0 deletions.

0 comments on commit 4ae7c4a

Please sign in to comment.