Skip to content

ngrok-samples/gitops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GitOps with ArgoCD and ngrok Kubernetes Operator

A simplified demonstration of how to automate ingress using the ngrok Kubernetes Operator with ArgoCD for GitOps workflows.

Repository Structure

├── argocd/                    # ArgoCD application definitions
│   ├── app-of-apps.yaml      # App of apps pattern
│   └── applications/         # Individual application manifests
├── apps/                     # Application manifests
│   └── api-demo/            # REST API demonstration app
├── infrastructure/          # Infrastructure components
│   ├── ngrok-operator/     # ngrok Operator installation
│   └── namespaces/         # Namespace definitions

Quick Start

  1. Install ArgoCD in your cluster
  2. Install ngrok Operator using the manifests in infrastructure/ngrok-operator/
  3. Configure your ngrok credentials as described below
  4. Apply the app-of-apps pattern: kubectl apply -f argocd/app-of-apps.yaml

ngrok Configuration

Before deploying, you'll need to:

  1. Create an ngrok account and obtain an API key
  2. Create a Kubernetes secret with your ngrok credentials:
kubectl create secret generic ngrok-operator-credentials \
  --from-literal=API_KEY=your_api_key \
  --from-literal=AUTHTOKEN=your_authtoken \
  -n ngrok-operator

What This Demonstrates

  • GitOps Workflow: All deployments managed through Git
  • ngrok CRDs: Direct use of ngrok Custom Resources for internal endpoints
  • App of Apps Pattern: Centralized management of multiple applications
  • Internal URL: Application accessible at https://api-demo.prod.internal

Components

  • API Demo: REST API service showcasing ngrok features
  • ngrok Operator: Kubernetes operator for managing ngrok tunnels
  • ArgoCD Applications: Declarative application management using plain YAML manifests

Usage

Once deployed, ArgoCD will automatically sync the applications. Any changes to this repository will trigger updates to the cluster.

Access your application at: https://gitops-demo.ngrok.app/api/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published