fasttrackml icon indicating copy to clipboard operation
fasttrackml copied to clipboard

Helm chart - fasttrackml

Open ljubon opened this issue 1 year ago • 8 comments

The goal of this PR is to package FastTrackML and allow contributors to also use it inside a Kubernetes cluster with simple installation The scope of change includes

  • [x] using existing Docker Image as a base image for k8s deployment
  • [ ] publishing the helm chart to main G-Research/charts with the rest of the charts
    • [ ] NOTE: For this action org owner will need to create secrets and follow process to onboard fasttrackml to this publishing mehanism

Testing helm chart

git checkout oss-350-helm-chart-lvl-2
kind create cluster --name fastrackml
kubectl cluster-info --context kind-fastrackml
helm install fasttrackml ./helm/fasttrackml
kubectl port-forward deployment/fasttrackml 5000:5000

# Cleanup command
kind delete cluster --name fastrackml

In your local browser at http://localhost:5000 service will be exposed

Resolves: https://github.com/G-Research/oss-portfolio-maturity/issues/350

ljubon avatar Jan 31 '24 14:01 ljubon

I get an error installing the chart: gwilson@macbook ~/P/fasttrackml (pr/845)> helm install fasttrackml ./helm/fasttrackml Error: INSTALLATION FAILED: ConfigMap in version "v1" cannot be handled as a ConfigMap: json: cannot unmarshal bool into Go struct field ConfigMap.data of type string

suprjinx avatar Feb 13 '24 16:02 suprjinx

I get an error installing the chart: gwilson@macbook ~/P/fasttrackml (pr/845)> helm install fasttrackml ./helm/fasttrackml Error: INSTALLATION FAILED: ConfigMap in version "v1" cannot be handled as a ConfigMap: json: cannot unmarshal bool into Go struct field ConfigMap.data of type string

Hi @suprjinx, thank you for your time and review 🙏 The above comments are resolved, let me know if the new changes are as you requested

Regarding the error you encountered, it was specific to templating boolean values of FML_DEV_MODE. The fix is in the latest commit with an additional note to keep in mind to quote all values passed under the data: section in values.yaml

ljubon avatar Feb 19 '24 14:02 ljubon

I get an error installing the chart: gwilson@macbook ~/P/fasttrackml (pr/845)> helm install fasttrackml ./helm/fasttrackml Error: INSTALLATION FAILED: ConfigMap in version "v1" cannot be handled as a ConfigMap: json: cannot unmarshal bool into Go struct field ConfigMap.data of type string

Hi @suprjinx, thank you for your time and review 🙏 The above comments are resolved, let me know if the new changes are as you requested

Regarding the error you encountered, it was specific to templating boolean values of FML_DEV_MODE. The fix is in the latest commit with an additional note to keep in mind to quote all values passed under the data: section in values.yaml

Thank you @ljubon for the contribution! I had one more suggestion on how to simplify the values.yaml

suprjinx avatar Feb 19 '24 17:02 suprjinx

This looks great, thanks for making those changes! Do you think we need to add ingress? (can be new ticket)

Thanks, @suprjinx, appreciated 🙏 Originally it makes sense to have that, but naturally, I wanted to start this idea of having a fasttrackml as a helm chart and tune the features depending on the needs and usage In the following commit I'll push basic ingress.yaml with few values exposed, let me know what you think - it can easily be adapted to any other ingress (Nginx, kong...etc)

ljubon avatar Feb 28 '24 11:02 ljubon

FYI @suprjinx other part of this PR is to publish the chart to the G-Research/charts, after merging this PR we will need to add a few secrets as mentioned and add config for the fasttrackml - I'll let you know when that's done. Once it's completed - the chart will be visible on official GR's helm repo as described in docs https://g-research.github.io/charts/ ⚡

ljubon avatar Feb 28 '24 11:02 ljubon

hey @suprjinx , could you approve the workflows too? Let me know if anything else is needed to bring this forward 🙏

ljubon avatar Mar 07 '24 17:03 ljubon

Hi @suprjinx could you approve PR and hopefully merge this change if not change is required?

ljubon avatar Apr 03 '24 15:04 ljubon

@ljubon Secrets created under the release environment. The key fingerprint to add to config.json is Da10MkM0RnFLWCcBbZ8ij+lYntgMDGSBdhljq+Oz5HY=.

jgiannuzzi avatar Apr 25 '24 07:04 jgiannuzzi

FYI: PR for adding fasttrackml to G-Research/charts config is merged https://github.com/G-Research/charts/pull/127

ljubon avatar May 09 '24 14:05 ljubon

FYI fasttrackml fingerprint adopted https://github.com/G-Research/charts/pull/130

ljubon avatar May 09 '24 15:05 ljubon