8000 GitHub - siddjoshi/gvm-chart: Helm Chart for deploying the https://github.com/austenstone/github-value app with Mongo with various Kubernetes providers (AKS, GKE, etc)
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Helm Chart for deploying the https://github.com/austenstone/github-value app with Mongo with various Kubernetes providers (AKS, GKE, etc)

Notifications You must be signed in to change notification settings

siddjoshi/gvm-chart

 
 

Repository files navigation

GitHub Value and MongoDB Chart ( 2/2025 release)

This repository contains a Helm chart for deploying a GitHub Value application alongside a MongoDB instance. The MongoDB chart is included as a dependency.

Watch the Getting Started Video

Prerequisites

  • A Kubernetes cluster (AKS, GKE, etc.).
  • Helm 3.x installed and configured.
  • kubectl configured with cluster access.

Network Diagram

image

Repository Structure

.
├── Chart.yaml # umbrella/parent chart
├── README.md
├── aks-values.yaml
├── gke-values.yaml
├── build/
│   ├── Dockerfile
│   ├── build.sh  # builds the docker image for the app 
│   └── entrypoint.sh
├── env_vars.sh    #temporary storage of secrets when testing, is not tracked by github
├── operational-notes.md
├── scripts/
│   ├── config-replica-endpts.sh  # necessary when deploying mongodb as a replicaset
│   ├── manage-gvm-chart.sh       (active script for install/upgrade)
│   ├── mongodb-external-service.yaml
│   ├── reconfig.js   # example input to the config-replica-endpts.sh script
│   ├── setup-helm.sh
└── value-app-chart/
    ├── Chart.yaml  #child/app chart
    ├── templates/
    │   ├── _helpers.tpl
    │   ├── app-deployment.yaml
    │   ├── configmap-github-value.yaml
    │   ├── service.yaml
    │   └── serviceaccount.yaml
    └── values.yaml

Setting Up Helm

Before deploying, initialize Helm and add any required repositories:

./scripts/setup-helm.sh

Using the Manage Script

Use the “manage-gvm-chart.sh” script to install or upgrade the chart. This script will also prompt for required environment variables.

Syntax:

./scripts/manage-gvm-chart.sh <install|upgrade> <values-file> <parent|child> [namespace]

Example for installing the parent (umbrella) chart using GKE values:

./scripts/manage-gvm-chart.sh install gke-values.yaml parent

Or upgrading the child chart for AKS in a custom namespace:

./scripts/manage-gvm-chart.sh upgrade aks-values.yaml child my-namespace

By default, the namespace is “default.”

Configuration & Secrets

The manage-gvm-chart.sh script prompts for sensitive information (e.g., MONGODB_ROOT_PASSWORD, private keys) so that they are never stored directly in the values.yaml file. Non-sensitive configurations such as application ID, port numbers, and basic environment-specific settings remain in the chart's values.yaml files.

Additional MongoDB Configuration

• config-replica-endpts.sh reconfigures the MongoDB replica set with external endpoints when using a LoadBalancer.
• mongodb-external-service.yaml can be applied to expose MongoDB externally for certain use cases.

Operational Guidance

. The operational-notes.md file describes critical operational considerations for PVs, Backup, and data lifecycle customization options.

License

MIT

About

Helm Chart for deploying the https://github.com/austenstone/github-value app with Mongo with various Kubernetes providers (AKS, GKE, etc)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 65.6%
  • Smarty 17.2%
  • Dockerfile 15.1%
  • JavaScript 2.1%
0