hasura / hasura/graphql-engine
Refactor kubernetes manifests location to expose kustomization.yaml file
- Dominant language
- TypeScript
- Stars
- 32.1k
- Forks
- 3k
- PR merge metrics
- PR metrics pending
Description
### Is your proposal related to a problem?
The existing installation proposal for kubernetes is quite rudimentary in that it requires various manual steps. This is error prone and hard to mantain
### Describe the solution you'd like
Given that manifest already exists in the repository, we can simply expose them by properly structuring the folder in a compatible format defined by Kustomize so it can load it remotely as a base resource.
Kustomize is a native k8s configuration management tool and it supports loading [remote configuration](https://github.com/kubernetes-sigs/kustomize/blob/master/examples/remoteBuild.md#remote-targets) including public github repositories, so we can easily expose kubernetes deployments through it.
```bash
▾ kubernetes/
▾ base/
deployment.yaml
svc.yaml
kustomization.yaml
README.md
```
With this users can simply create a kustomization file of their own and reference this like so:
```
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
namespace: default
resources:
- https://github.com/hasura/graphql-engine/install-manifests/kubernetes/base?ref=v2.7.0
```
Because it supports versioning, users can simply update to whatever latest tag the repository has built
### Describe alternatives you've considered
There's an issue that requests the creation of a helm chart for this project #8380 - This would certainly help solve for this issue.
### If the feature is approved, would you be willing to submit a PR?
Yes
Contributor guide
Assessment
This issue has not been assessed yet.