This repository demonstrates the GitOps-based configuration management approach for Log10x deployments. Use this as a reference when creating your own configuration repository.
You can either fork this repository or create your own clean repository. There's no need to keep it in sync with this upstream repository.
See the GitOps Getting Started guide for detailed instructions.
Example structure for organizing your configuration files:
├── config/
│ ├── apps/
│ │ ├── edge/
│ │ │ ├── optimizer.yaml
│ │ │ ├── regulator.yaml
│ │ │ └── reporter.yaml
│ │ └── cloud/
│ │ ├── reporter.yaml
│ │ └── streamer.yaml
│ └── pipelines/
│ └── run/
│ └── modules/
├── scripts/
│ └── enrichment.js
├── lookups/
│ ├── geoip.mmdb
│ └── cost-policy.csv
└── symbols/
└── myapp.10x.tar
config/: YAML configuration files - see Configuration Documentationscripts/: JavaScript enrichment scripts - see JavaScript APIlookups/: CSV/TSV lookup files and GeoIP databases - see TenXLookup APIsymbols/: AOT-compiled symbol library files (.10x.tar) - see Compiler application
Reference your repository in your Log10x deployment using the @github launch macro. See GitHub Configuration for complete details.
YAML Configuration:
tenx: run
include:
- source: github
options:
token: $=TenXEnv.get("GH_TOKEN")
repo: my-org/my-config-repo
branch: production
paths:
- config/*.yaml
- scripts/*.js
- lookups/*.csv
- symbols/*.10x.tar
syncInterval: 5minDocker CLI:
docker run --rm \
-e TENX_API_KEY=${TENX_API_KEY} \
-e GH_TOKEN=${GH_TOKEN} \
ghcr.io/log-10x/log10x-pipeline:latest \
'@github={"token": "${GH_TOKEN}", "repo": "my-org/my-config-repo", "branch": "production"}' \
@apps/cloud/reporterKubernetes: See Deployment Guide for Kubernetes configuration examples.
See the GitOps Best Practices documentation for:
- Secret management
- Branch strategy
- Repository synchronization
- Version tagging
- Configuration validation
See the Policy Module documentation for the complete workflow where policy lookup files are committed to this repository and pulled by edge regulators.
Use separate branches for different environments. Each environment pulls from its respective branch automatically. See GitOps Architecture for details.
See LICENSE file for details.