Skip to content

Add production values file with ghcr.io registry support and CI workflow#3

Merged
ianchen0119 merged 3 commits intomainfrom
copilot/fix-216da279-43e9-494e-8885-17d9d7dc401b
Oct 6, 2025
Merged

Add production values file with ghcr.io registry support and CI workflow#3
ianchen0119 merged 3 commits intomainfrom
copilot/fix-216da279-43e9-494e-8885-17d9d7dc401b

Conversation

Copy link
Contributor

Copilot AI commented Oct 6, 2025

Overview

This PR adds a dedicated values-production.yaml file for production deployments of the Gthulhu Helm chart, using container images published to GitHub Container Registry (ghcr.io/gthulhu), and includes a CI workflow for automated Helm chart linting.

Problem

The existing values.yaml file is configured for testing purposes with:

  • Local registry (127.0.0.1:32000) for development
  • Always pull policy (not suitable for production)
  • Minimal resource allocations
  • Disabled autoscaling and monitoring

While the Makefile already referenced values-production.yaml for production installations, this file did not exist in the repository. Additionally, there was no automated CI workflow to lint Helm charts.

Solution

Created values-production.yaml with production-ready configurations:

Image Registry

  • Scheduler: ghcr.io/gthulhu/gthulhu:latest
  • API Server: ghcr.io/gthulhu/gthulhu-api:latest
  • Pull Policy: IfNotPresent (production best practice)

Production Optimizations

  • API Replicas: Increased from 1 to 3 for high availability
  • Horizontal Pod Autoscaling: Enabled with 2-10 replica range, 70% CPU target
  • Resource Limits: Higher allocations suitable for production workloads
    • Scheduler: 1000m CPU / 1Gi memory
    • API Server: 500m CPU / 512Mi memory
  • Monitoring: Enabled with ServiceMonitor support for Prometheus integration
  • Ingress: Pre-configured with nginx class and example domain

CI Workflow

Added .github/workflows/helm-lint.yaml that:

  • Runs on push and pull requests to main and develop branches
  • Lints the Helm chart with both default and production values
  • Tests template rendering with both value sets
  • Uses Helm v3.13.0

Usage

# Install with production values
helm install gthulhu ./gthulhu -f values-production.yaml

# Or using the Makefile
make install-prod

Testing

  • helm lint passes successfully with both default and production values
  • helm template renders correctly with ghcr.io images
  • ✅ Compatible with existing Makefile targets
  • ✅ All production features verified (autoscaling, monitoring, replicas)
  • ✅ CI workflow validates chart on every commit

Fixes #2

Original prompt

This section details on the original issue you should resolve

<issue_title>Add new values.yaml for production use</issue_title>
<issue_description>We have released container images on GitHub package with prefix ghcr.io/gthulhu.

Our current values.yaml is used for testing purposes. Please add an additional one for production use.</issue_description>

Comments on the Issue (you are @copilot in this section)

Fixes #2

💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

…gistry

Co-authored-by: ianchen0119 <42661015+ianchen0119@users.noreply.github.com>
Copilot AI changed the title [WIP] Add new values.yaml for production use Add production values file with ghcr.io registry support Oct 6, 2025
Copilot AI requested a review from ianchen0119 October 6, 2025 10:33
@ianchen0119 ianchen0119 marked this pull request as ready for review October 6, 2025 10:48
@ianchen0119
Copy link
Contributor

@copilot-swe-agent
LGTM.
Could you do me a favor? Add a ci workflow for helm linting.

Co-authored-by: ianchen0119 <42661015+ianchen0119@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Oct 6, 2025

@copilot-swe-agent
LGTM.
Could you do me a favor? Add a ci workflow for helm linting.

Added CI workflow for helm linting in .github/workflows/helm-lint.yaml. The workflow runs on push and PR events, linting the chart with both default and production values files. (commit: a8a2c04)

Copilot AI changed the title Add production values file with ghcr.io registry support Add production values file with ghcr.io registry support and CI workflow Oct 6, 2025
Copilot AI requested a review from ianchen0119 October 6, 2025 10:54
@ianchen0119 ianchen0119 merged commit 46d2dd6 into main Oct 6, 2025
2 checks passed
@ianchen0119 ianchen0119 deleted the copilot/fix-216da279-43e9-494e-8885-17d9d7dc401b branch October 6, 2025 11:00
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.

Add new values.yaml for production use

2 participants