Skip to content

Commit cc22b9a

Browse files
authored
Merge pull request #9 from cloudengine-labs/copilot/update-command-documentation
Add Hugo documentation site and update CLI docs with output locations
2 parents b1b80a2 + 76bdf38 commit cc22b9a

28 files changed

Lines changed: 3296 additions & 253 deletions

.github/workflows/pages.yml

Lines changed: 41 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
1-
name: Deploy GitHub Pages
1+
name: Deploy Hugo Documentation
22

33
on:
44
push:
55
branches:
66
- main
7+
paths:
8+
- 'hugo-docs/**'
9+
- '.github/workflows/pages.yml'
710
workflow_dispatch:
811

912
permissions:
@@ -15,26 +18,53 @@ concurrency:
1518
group: "pages"
1619
cancel-in-progress: false
1720

21+
# Default shell
22+
defaults:
23+
run:
24+
shell: bash
25+
1826
jobs:
1927
build:
2028
runs-on: ubuntu-latest
29+
env:
30+
HUGO_VERSION: "0.147.0"
2131
steps:
22-
- name: Checkout
32+
- name: Checkout repository
2333
uses: actions/checkout@v4
24-
25-
- name: Setup Pages
26-
uses: actions/configure-pages@v5
2734
with:
28-
enablement: true
35+
fetch-depth: 0 # Full history for .GitInfo / LastMod
2936

30-
- name: Build with Jekyll
31-
uses: actions/jekyll-build-pages@v1
37+
- name: Setup Go (required for Hugo modules)
38+
uses: actions/setup-go@v5
3239
with:
33-
source: ./
34-
destination: ./_site
40+
go-version: "1.22"
3541

36-
- name: Upload artifact
42+
- name: Install Hugo CLI
43+
run: |
44+
wget -O ${{ runner.temp }}/hugo.deb \
45+
https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb
46+
sudo dpkg -i ${{ runner.temp }}/hugo.deb
47+
48+
- name: Setup GitHub Pages
49+
id: pages
50+
uses: actions/configure-pages@v5
51+
52+
- name: Download Hugo modules
53+
working-directory: ./hugo-docs
54+
run: hugo mod tidy
55+
56+
- name: Build Hugo site
57+
working-directory: ./hugo-docs
58+
env:
59+
HUGO_ENVIRONMENT: production
60+
# Use the Pages URL configured above
61+
HUGO_BASEURL: ${{ steps.pages.outputs.base_url }}/
62+
run: hugo --gc --minify
63+
64+
- name: Upload Pages artifact
3765
uses: actions/upload-pages-artifact@v3
66+
with:
67+
path: ./hugo-docs/public
3868

3969
deploy:
4070
environment:

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,8 @@ _site/
1212
.venv/
1313
venv/
1414
docs/test-report.html
15+
16+
# Hugo build artifacts
17+
hugo-docs/public/
18+
hugo-docs/resources/
19+
hugo-docs/.hugo_build.lock

README-INDEX.md

Lines changed: 44 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,40 +6,63 @@ Welcome to the DevOps-OS documentation! This set of guides will help you use and
66

77
| Guide | Description |
88
|-------|-------------|
9-
| [Creating DevOps-OS Using Dev Container](.devcontainer/DEVOPS-OS-README.md) | How to set up and customize the DevOps-OS development container |
10-
| [DevOps-OS Quick Start Guide](.devcontainer/DEVOPS-OS-QUICKSTART.md) | Essential CLI commands for all functionality in the project |
11-
| [Creating Customized GitHub Actions Templates](.devcontainer/GITHUB-ACTIONS-README.md) | How to generate and customize GitHub Actions workflows |
12-
| [Creating Customized Jenkins Templates](.devcontainer/JENKINS-PIPELINE-README.md) | How to generate and customize Jenkins pipelines |
13-
| [Creating Kubernetes Deployments](.devcontainer/KUBERNETES-DEPLOYMENT-README.md) | How to generate and manage Kubernetes deployment configurations |
14-
| [Implementing CI/CD for Technology Stacks](.devcontainer/CICD-TECH-STACK-README.md) | How to implement CI/CD pipelines for specific technology stacks |
15-
| [CI/CD Generators Usage Guide](.devcontainer/CI-CD-GENERATORS-USAGE.md) | Detailed options and examples for the CI/CD generators |
9+
| [**CLI Commands Reference**](docs/CLI-COMMANDS-REFERENCE.md) | **Complete reference** — every option, input file, and output location for all CLI commands |
10+
| [Getting Started](docs/GETTING-STARTED.md) | First pipeline in 5 minutes |
11+
| [Quick Start Guide](docs/DEVOPS-OS-QUICKSTART.md) | Essential CLI commands for all functionality |
12+
| [GitHub Actions Generator](docs/GITHUB-ACTIONS-README.md) | Generate and customize GitHub Actions workflows |
13+
| [GitLab CI Generator](docs/GITLAB-CI-README.md) | Generate and customize GitLab CI pipelines |
14+
| [Jenkins Pipeline Generator](docs/JENKINS-PIPELINE-README.md) | Generate and customize Jenkins pipelines |
15+
| [ArgoCD / Flux CD Generator](docs/ARGOCD-README.md) | Generate ArgoCD and Flux CD GitOps configs |
16+
| [SRE Configuration Generator](docs/SRE-CONFIGURATION-README.md) | Generate Prometheus, Grafana, SLO, and Alertmanager configs |
17+
| [Kubernetes Deployment](docs/KUBERNETES-DEPLOYMENT-README.md) | Generate and manage Kubernetes deployment configurations |
18+
| [CI/CD for Technology Stacks](docs/CICD-TECH-STACK-README.md) | Implement CI/CD for specific technology stacks |
19+
| [DevOps-OS Dev Container](docs/DEVOPS-OS-README.md) | Set up and customize the dev container |
20+
21+
## CLI Generator Quick Reference
22+
23+
| Command | Default output |
24+
|---------|---------------|
25+
| `python -m cli.scaffold_gha` | `.github/workflows/<name>-<type>.yml` |
26+
| `python -m cli.scaffold_gitlab` | `.gitlab-ci.yml` |
27+
| `python -m cli.scaffold_jenkins` | `Jenkinsfile` |
28+
| `python -m cli.scaffold_argocd` | `argocd/` directory |
29+
| `python -m cli.scaffold_argocd --method flux` | `flux/` directory |
30+
| `python -m cli.scaffold_sre` | `sre/` directory |
31+
| `python -m cli.scaffold_devcontainer` | `.devcontainer/` directory |
32+
33+
See [CLI Commands Reference](docs/CLI-COMMANDS-REFERENCE.md) for the full option tables, input files, and output path details.
1634

17-
## CI/CD Generator Tools
35+
## Quick Start
1836

19-
DevOps-OS includes powerful generators for creating CI/CD configurations:
37+
```bash
38+
git clone https://github.com/cloudengine-labs/devops_os.git
39+
cd devops_os
40+
pip install -r cli/requirements.txt
2041

21-
1. **GitHub Actions Generator**: `github-actions-generator-improved.py`
22-
2. **Jenkins Pipeline Generator**: `jenkins-pipeline-generator-improved.py`
23-
3. **Kubernetes Config Generator**: `k8s-config-generator.py`
24-
4. **Unified CI/CD Generator**: `generate-cicd.py`
42+
# GitHub Actions complete pipeline
43+
python -m cli.scaffold_gha --name my-app --languages python,javascript --type complete
44+
# Output: .github/workflows/my-app-complete.yml
2545

26-
## Quick Start
46+
# GitLab CI pipeline
47+
python -m cli.scaffold_gitlab --name my-app --languages python
48+
# Output: .gitlab-ci.yml
2749

28-
To quickly generate both GitHub Actions and Jenkins pipelines:
29-
30-
```bash
31-
.devcontainer/generate-cicd.py --name "My Project" --languages python,javascript --kubernetes
50+
# SRE monitoring stack
51+
python -m cli.scaffold_sre --name my-app --team platform
52+
# Output: sre/ directory
3253
```
3354

34-
For more examples and detailed usage, see the [DevOps-OS Quick Start Guide](DEVOPS-OS-QUICKSTART.md).
55+
For more examples and detailed usage, see the [Getting Started guide](docs/GETTING-STARTED.md).
3556

3657
## Features
3758

3859
- **Multi-language Support**: Python, Java, JavaScript/TypeScript, Go
39-
- **CI/CD Configuration**: GitHub Actions, Jenkins
60+
- **CI/CD Configuration**: GitHub Actions, GitLab CI, Jenkins
61+
- **GitOps**: ArgoCD, Flux CD
62+
- **SRE Observability**: Prometheus alert rules, Grafana dashboards, SLO manifests, Alertmanager configs
4063
- **Kubernetes Deployment**: kubectl, kustomize, ArgoCD, Flux
4164
- **Customization**: Environment variables, command-line options, custom JSON configurations
42-
- **Integration**: Container registries, credentials management, external services
65+
- **AI Integration**: Claude MCP server, OpenAI function calling
4366

4467
## Getting Help
4568

README.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -103,26 +103,30 @@ python -m cli.scaffold_gha --name my-app --languages python --kubernetes --k8s-m
103103
### 3 — Generate other pipelines & configs
104104

105105
```bash
106-
# Jenkins pipeline
106+
# Jenkins pipeline → Jenkinsfile
107107
python -m cli.scaffold_jenkins --name my-app --languages java --type complete
108108

109-
# GitLab CI pipeline
109+
# GitLab CI pipeline → .gitlab-ci.yml
110110
python -m cli.scaffold_gitlab --name my-app --languages python,go --type complete
111111

112-
# ArgoCD / Flux GitOps configs
112+
# ArgoCD GitOps configs → argocd/application.yaml + argocd/appproject.yaml
113113
python -m cli.scaffold_argocd --name my-app --repo https://github.com/myorg/my-app.git
114+
115+
# Flux GitOps configs → flux/git-repository.yaml + flux/kustomization.yaml + flux/image-update-automation.yaml
114116
python -m cli.scaffold_argocd --name my-app --method flux --repo https://github.com/myorg/my-app.git
115117

116-
# SRE configs (Prometheus, Grafana, SLO)
118+
# SRE configs (Prometheus, Grafana, SLO) → sre/ directory
117119
python -m cli.scaffold_sre --name my-app --team platform --slo-target 99.9
118120

119-
# Dev container configuration
121+
# Dev container configuration → .devcontainer/devcontainer.json + .devcontainer/devcontainer.env.json
120122
python -m cli.scaffold_devcontainer --languages python,go --cicd-tools docker,terraform --kubernetes-tools k9s,flux
121123

122124
# Kubernetes manifests
123125
python kubernetes/k8s-config-generator.py --name my-app --image ghcr.io/myorg/my-app:v1
124126
```
125127

128+
> See [CLI Commands Reference](docs/CLI-COMMANDS-REFERENCE.md) for the full option tables and every default output path.
129+
126130
### 4 — Interactive wizard (all-in-one)
127131

128132
```bash
@@ -234,6 +238,7 @@ You can also customize `.devcontainer/devcontainer.env.json` directly to enable
234238
| Guide | Description |
235239
|-------|-------------|
236240
| [🚀 Getting Started](docs/GETTING-STARTED.md) | Easy step-by-step guide — **start here** |
241+
| [📖 CLI Commands Reference](docs/CLI-COMMANDS-REFERENCE.md) | **Complete reference** — every option, input file, and output location |
237242
| [📦 Dev Container Setup](docs/DEVOPS-OS-README.md) | Set up and customize the dev container |
238243
| [⚡ Quick Start Reference](docs/DEVOPS-OS-QUICKSTART.md) | Essential CLI commands for all features |
239244
| [⚙️ GitHub Actions Generator](docs/GITHUB-ACTIONS-README.md) | Generate and customize GitHub Actions workflows |

docs/ARGOCD-README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ python -m cli.scaffold_argocd \
4343
| `--rollouts` | off | Add an Argo Rollouts canary resource |
4444
| `--image` | `ghcr.io/myorg/my-app` | Image for Flux image automation |
4545
| `--output-dir` | `.` | Root directory for output files |
46+
| `--allow-any-source-repo` | off | Add `*` to AppProject `sourceRepos` (grants access to any repo — use with caution) |
47+
48+
All options can also be set via environment variables prefixed with `DEVOPS_OS_ARGOCD_`
49+
(e.g. `DEVOPS_OS_ARGOCD_AUTO_SYNC=true`).
4650

4751
## ArgoCD Output Files
4852

0 commit comments

Comments
 (0)