railiance: initial bootstrap scaffold
Some checks failed
railiance-tests / smoke (push) Has been cancelled
Some checks failed
railiance-tests / smoke (push) Has been cancelled
This commit is contained in:
7
.editorconfig
Normal file
7
.editorconfig
Normal 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
11
.github/workflows/tests.yml
vendored
Normal 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
17
.gitignore
vendored
Normal 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
18
README.md
Normal 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
25
ansible/bootstrap.yml
Normal 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
5
docs/OODA.md
Normal 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
5
tests/smoke_kube.sh
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
kubectl get nodes
|
||||
kubectl get ns
|
||||
echo "[OK] basic k8s API reachable"
|
||||
Reference in New Issue
Block a user