railiance: initial bootstrap scaffold
Some checks failed
railiance-tests / smoke (push) Has been cancelled

This commit is contained in:
2025-09-12 01:46:14 +02:00
commit 6b9307289b
7 changed files with 88 additions and 0 deletions

7
.editorconfig Normal file
View File

@@ -0,0 +1,7 @@
root = true
[*]
end_of_line = lf
insert_final_newline = true
charset = utf-8
indent_style = space
indent_size = 2

11
.github/workflows/tests.yml vendored Normal file
View File

@@ -0,0 +1,11 @@
name: railiance-tests
on: [push, pull_request]
jobs:
smoke:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: K8s smoke (placeholder)
run: |
echo "Provide kubeconfig in CI or run locally:"
echo " KUBECONFIG=/etc/rancher/k3s/k3s.yaml ./tests/smoke_kube.sh"

17
.gitignore vendored Normal file
View File

@@ -0,0 +1,17 @@
# OS
.DS_Store
# Python
__pycache__/
*.pyc
# Ansible artifacts
*.retry
# Helm build
charts/*/charts/
charts/*/tmp/
# Local secrets (do not commit)
secrets/
*.enc

18
README.md Normal file
View File

@@ -0,0 +1,18 @@
# railiance-bootstrap
**Railiance Bootstrap** — opinionated, reproducible IaC to rebuild Coulomb infra from scratch.
## Goals
- Two Linux machines + this Git repo + credentials ⇒ full rebuild
- GitOps-first with ArgoCD/Flux
- OODA (Observe→Orient→Decide→Act) encoded as pipelines
- Tests define success at every step
## Layout
```
ansible/ # host bootstrap
helm/ # charts & values
k8s/ # raw manifests/CRDs
tests/ # expectation tests (bash/py)
docs/ # operator notes, OODA SOPs
```

25
ansible/bootstrap.yml Normal file
View File

@@ -0,0 +1,25 @@
---
- name: Railiance host bootstrap
hosts: all
become: true
tasks:
- name: Ensure base packages
apt:
name:
- curl
- git
- jq
update_cache: yes
state: present
- name: Install k3s (server)
shell: |
curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="server --write-kubeconfig-mode=644" sh -
args: { creates: /usr/local/bin/k3s }
- name: Verify k3s node
shell: k3s kubectl get nodes
register: nodes
changed_when: false
- debug: var=nodes.stdout_lines

5
docs/OODA.md Normal file
View File

@@ -0,0 +1,5 @@
# OODA in Railiance
- Observe: telemetry & test results
- Orient: AI analyzes deltas & proposes remediations
- Decide: specify → review → authorize (Git PR)
- Act: GitOps applies automatically (human independent)

5
tests/smoke_kube.sh Normal file
View File

@@ -0,0 +1,5 @@
#!/usr/bin/env bash
set -euo pipefail
kubectl get nodes
kubectl get ns
echo "[OK] basic k8s API reachable"