bcgov / bcgov/action-deployer-openshift

feat: Support Kustomize deployments

Open
#150 0 comments 0 reactions 1 assignee Claimed by @DerekRoberts View on GitHub
Dominant language
No language data
Stars
1
Forks
5
PR merge metrics
No merged PRs in 30d

Description

## Description
While OpenShift Templates are excellent for dynamic, parameter-driven deployments (like PR environments), Kustomize has become the standard for managing structural differences between stable environments (TEST vs. PROD) without the "black box" complexity of Helm. Adding native Kustomize support would modernize the action and provide a cleaner path to GitOps for developers.

## Proposed Change
Add a new optional input `kustomization_path`. When provided, the action will switch from "Template Mode" to "Kustomize Mode."

### New Input
```yaml
kustomization_path:
description: 'Path to the directory containing kustomization.yaml'
required: false
```

### Execution Logic
1. If `kustomization_path` is set:
- (Optional) If in **Lite Mode** (PR deployment):
- Use `kustomize edit` to remove `HorizontalPodAutoscaler` or `PodDisruptionBudget` objects on the fly.
- Use `kustomize edit set replicas ...` to enforce 1 replica.
- Execute `oc apply -k `.
2. Else if `file` is set:
- Continue with the existing `oc process | oc apply` workflow.

## Impact
- **Zero Breaking Changes:** Existing users of OpenShift Templates are unaffected.
- **Improved Lite Mode:** Leverages native Kustomize editing instead of manual manifest manipulation.
- **Modern Standards:** Aligns the action with OCP 4.x best practices and provides a bridge for teams moving toward ArgoCD.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.