Skip to content

Firefly 1966 add helm chart#1927

Open
loitly wants to merge 3 commits intodevfrom
FIREFLY-1966-add-helm-chart
Open

Firefly 1966 add helm chart#1927
loitly wants to merge 3 commits intodevfrom
FIREFLY-1966-add-helm-chart

Conversation

@loitly
Copy link
Copy Markdown
Contributor

@loitly loitly commented Mar 31, 2026

Ticket: https://jira.ipac.caltech.edu/browse/FIREFLY-1966

Summary

  • Add Helm chart for deploying Firefly to Kubernetes
  • Supports deployment, service, and ingress with session affinity
  • Configurable persistence volumes (emptyDir, PVC, or existing PVC)
  • Auto-deploys Redis and injects session affinity annotations when replicaCount > 1
  • Publishes chart to GHCR (ghcr.io/caltech-ipac/firefly-chart) as part of the build/publish workflow
    See REAME for details

Notes
The GHCR packages are currently private. You will need to authenticate to pull the image or chart.
Login with:
helm registry login ghcr.io -u your-github-username
I will ask management to allow it to be public.

@loitly loitly added this to the 2026.1 milestone Mar 31, 2026
@loitly loitly requested review from kpuriIpac and robyww March 31, 2026 23:09
@loitly loitly self-assigned this Mar 31, 2026
Copy link
Copy Markdown
Contributor

@robyww robyww left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is hard to review since I don't have the expertise. It looks fine.

  • I appreciate the readme
  • We will probably need a lot of documentation.

I have many questions to ask when you give use an overview.

  • My biggest question right now is, How are the templates accessed and used?
  • I have many more questions as well.

Copy link
Copy Markdown
Contributor

@kpuriIpac kpuriIpac left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I echo @robyww's comment, going over this will help tomorrow. But I spent some time looking at changes and from what I understand they look good.

I had to add a new Personal Access Token on Github with read only access to login to helm registry ghcr.io.

I was then able to follow instructions in readme to install the firefly chart & that worked for me (I guess the chart/packages were made public?)

I verified via kubectl I could see this new firefly pod. I set it to a different local port (since 8080 runs the tomcat firefly for me) and accessed the app locally as well!

@kpuriIpac
Copy link
Copy Markdown
Contributor

@robyww @jaladh-singhal following up from morning meeting, here are my steps to test this if you'd like to duplicate them & try for yourself:

  • helm registry login ghcr.io -u <your-github-username>
    • When it asks for password, you will need to use your Personal Access Token. I didn't have one on firefly for this use case so I went to Github settings -> Developer Settings -> Personal Access Tokens -> Tokens (classic) -> Generate new token (classic) with read:packages access.
  • Make sure your kubernetes setup is working
    • try running kubectl get nodes
  • Run this (from @loitly readme, but ingress disabled):
 helm upgrade --install firefly oci://ghcr.io/caltech-ipac/firefly-chart/firefly \
 -n firefly-local \
 --create-namespace \
 --set ingress.enabled=false
  • Run kubectl get pods -n firefly-local
    • you should see a valid pod named firefly-local now
  • Since ingress is disabled, run this command for port-forwarding:
    • kubectl port-forward -n firefly-local svc/firefly 9090:80
  • Access firefly on: http://localhost:9090/firefly
  • Then you can run the regular kubectl commands:
    kubectl get pods -n firefly-local
    kubectl describe pod -n firefly-local <pod-name>
    kubectl logs -n firefly-local <pod-name>
    helm status firefly -n firefly-local
  • Uninstall:
    • helm -n firefly-local uninstall firefly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants