chore: fix repo URL, gitignore IDE dirs, and prerequisite docs

This commit is contained in:
Paul Harkink 2026-02-28 16:07:57 +01:00
parent 1ccccde18d
commit 5d34d2d2bf
14 changed files with 75 additions and 42 deletions

4
.gitignore vendored
View file

@ -6,5 +6,9 @@ roadmap.md
# Vagrant
.vagrant/
# IDEs
.idea/
.vscode/
# macOS
.DS_Store

View file

@ -9,15 +9,25 @@ ArgoCD, MetalLB, Ingress-Nginx, and Tekton — all on a local single-node k3s cl
### Requirements
- [VirtualBox 7.x](https://www.virtualbox.org/wiki/Downloads)
- [Vagrant 2.4.x](https://developer.hashicorp.com/vagrant/downloads)
- Git
- 12 GB RAM free on your laptop, ~15 GB disk
Install all three **before** the workshop (ideally the day before — downloads are large):
| Tool | Install |
|--------------------|------------------------------------------------------------------|
| **VirtualBox 7.x** | https://www.virtualbox.org/wiki/Downloads — reboot after install |
| **Vagrant 2.4.x** | https://developer.hashicorp.com/vagrant/downloads |
| **Git** | https://git-scm.com/downloads |
12 GB RAM free, ~15 GB disk. On Apple Silicon (M1/M2/M3/M4), download the **Apple Silicon build** of VirtualBox — see [docs/vm-setup.md](docs/vm-setup.md).
Quick check — all three must print a version:
```bash
VBoxManage --version && vagrant --version && git --version
```
### 1. Start the VM
```bash
git clone https://github.com/innspire/ops-demo.git
git clone https://github.com/paulharkink/ops-demo.git
cd ops-demo
vagrant up # first run: ~1015 min
vagrant ssh
@ -39,7 +49,7 @@ Then follow the exercises in order.
## Exercises
| # | Exercise | Guide | Type | Est. Time |
|---|----------|-------|------|-----------|
|----|---------------------------|------------------------------------------------------------|-------|-----------|
| 01 | Bootstrap ArgoCD | [docs/01-argocd-bootstrap.md](docs/01-argocd-bootstrap.md) | Core | 30 min |
| 02 | Deploy podinfo via GitOps | [docs/02-deploy-podinfo.md](docs/02-deploy-podinfo.md) | Core | 30 min |
| 03 | MetalLB + Ingress-Nginx | [docs/03-metallb-ingress.md](docs/03-metallb-ingress.md) | Core | 45 min |
@ -55,7 +65,7 @@ Then follow the exercises in order.
## Stack
| Component | Purpose | Version |
|-----------|---------|---------|
|-----------------------|-------------------------|------------------------|
| k3s | Kubernetes | v1.31.4 |
| ArgoCD | GitOps engine | v2.13.x (chart 7.7.11) |
| MetalLB | Bare-metal LoadBalancer | v0.14.9 |
@ -78,7 +88,7 @@ git show origin/solution/03-metallb-ingress:manifests/networking/metallb/metallb
```
| Branch | State |
|--------|-------|
|--------------------------------|----------------------------------|
| `solution/01-argocd-bootstrap` | ArgoCD running |
| `solution/02-deploy-podinfo` | podinfo synced via ArgoCD |
| `solution/03-metallb-ingress` | LAN access via MetalLB + Ingress |

View file

@ -8,7 +8,7 @@ metadata:
spec:
project: workshop
source:
repoURL: https://github.com/innspire/ops-demo.git
repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
path: manifests/apps/podinfo
destination:

View file

@ -21,7 +21,7 @@ spec:
helm:
valueFiles:
- $values/manifests/argocd/values.yaml
- repoURL: https://github.com/innspire/ops-demo.git
- repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
ref: values
destination:

View file

@ -8,7 +8,7 @@ metadata:
spec:
project: workshop
source:
repoURL: https://github.com/innspire/ops-demo.git
repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
path: manifests/ci/pipeline
destination:

View file

@ -8,7 +8,7 @@ metadata:
spec:
project: workshop
source:
repoURL: https://github.com/innspire/ops-demo.git
repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
path: manifests/ci/tekton
kustomize: {}

View file

@ -14,7 +14,7 @@ spec:
helm:
valueFiles:
- $values/manifests/monitoring/values.yaml
- repoURL: https://github.com/innspire/ops-demo.git
- repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
ref: values
destination:

View file

@ -14,7 +14,7 @@ spec:
helm:
valueFiles:
- $values/manifests/networking/ingress-nginx/values.yaml
- repoURL: https://github.com/innspire/ops-demo.git
- repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
ref: values
destination:

View file

@ -8,7 +8,7 @@ metadata:
spec:
project: workshop
source:
repoURL: https://github.com/innspire/ops-demo.git
repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
path: manifests/networking/metallb
directory:

View file

@ -14,7 +14,7 @@ spec:
helm:
valueFiles:
- $values/manifests/networking/metallb/values.yaml
- repoURL: https://github.com/innspire/ops-demo.git
- repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
ref: values
destination:

View file

@ -6,7 +6,7 @@ metadata:
spec:
project: workshop
source:
repoURL: https://github.com/innspire/ops-demo.git
repoURL: https://github.com/paulharkink/ops-demo.git
targetRevision: HEAD
path: apps
destination:

View file

@ -7,6 +7,8 @@ This page walks you through starting the VM and verifying it is healthy before t
## Requirements (install on your laptop before the workshop)
> **Do this the day before** — downloads can be slow on conference WiFi.
| Tool | Version | Download |
|------|---------|----------|
| VirtualBox | 7.x | https://www.virtualbox.org/wiki/Downloads |
@ -16,12 +18,28 @@ This page walks you through starting the VM and verifying it is healthy before t
**RAM**: The VM uses 8 GB. Your laptop should have at least 12 GB total RAM free.
**Disk**: ~15 GB free (Vagrant box ~1 GB + k3s images ~5 GB + workspace).
> **Apple Silicon (M1/M2/M3/M4)**: VirtualBox 7.1+ supports Apple Silicon — make sure
> to download the **"macOS / Apple Silicon hosts"** build from the VirtualBox download page,
> not the Intel build.
### Verify your installs before continuing
```bash
# All three must return a version number — if any fail, install it first
VBoxManage --version # e.g. 7.1.4r165100
vagrant --version # e.g. Vagrant 2.4.3
git --version # e.g. git version 2.x.x
```
If `VBoxManage` is not found after installing VirtualBox, reboot your laptop —
VirtualBox installs a kernel extension that requires a restart.
---
## Step 1 — Clone the repo
```bash
git clone https://github.com/innspire/ops-demo.git
git clone https://github.com/paulharkink/ops-demo.git
cd ops-demo
```
@ -138,6 +156,7 @@ vagrant destroy # delete the VM entirely (start fresh)
| Symptom | Fix |
|---------|-----|
| `vagrant up`: "No usable default provider" | VirtualBox is not installed — install it and reboot, then retry |
| `vagrant up` fails: VT-x/AMD-V not enabled | Enable virtualisation in BIOS/UEFI settings |
| `vagrant up` fails: port conflict | Another VM may be using the host-only range; stop it |
| `kubectl get nodes` shows NotReady | k3s is still starting; wait 3060 s |

View file

@ -13,7 +13,7 @@ spec:
- name: repo-url
type: string
description: URL of the ops-demo git repository
default: https://github.com/innspire/ops-demo.git
default: https://github.com/paulharkink/ops-demo.git
- name: new-tag
type: string
description: New podinfo image tag to set (e.g. 6.7.0)

View file

@ -12,7 +12,7 @@ spec:
serviceAccountName: pipeline-runner
params:
- name: repo-url
value: https://github.com/innspire/ops-demo.git
value: https://github.com/paulharkink/ops-demo.git
- name: new-tag
value: "6.7.0"
- name: git-user-name