provisioning tool for building opinionated architecture
 
 
pvincent d8e32eac2b environment variable EMAIL 10 months ago
.vscode second commit 11 months ago
lib environment variable EMAIL 10 months ago
recipes recipe odoo data 10 months ago
scripts recipe odoo data 10 months ago
templates autodetect_email from .ssh/authorized_keys 10 months ago
.semver_git_tag tagged as 0.0.2 11 months ago
LICENSE second commit 11 months ago
README.md install from fresh debian12 10 months ago

README.md

MIAOU

provisioning tool for building opinionated architecture following these principles:

  • free software: AGPLv3
  • multi-target: DEV, BETA (alias staging), PROD
  • container-based: LXD/LXC on Debian 12 (bookworm)
  • secured: NFT
  • monitored: MONIT

TODO

  • backup postgresql missing out on saturday
  • TOOLBOOX/nc (binary)
  • final ansible-like indicators: same/new
  • patched editor (backup+editor+diff+patch)
  • to improve log journal for each recipe (apache, for example) in order to shorten disk space

ORIGIN

The project name miaou comes up from both a French and Reunion's Creole pun

  • miaou is a shortcut for mi aim aou, which means 'I love you'
  • miaou means 'meow' in french, related to the acronym C.H.A.T.O.N.S

ARCHITECTURE

to draw... (mermaid?)

  • DEV (sync from PROD via SAVE, sync from BETA, push new to BETA)
  • BETA (sync from PROD via SAVE, push new to PROD)
  • PROD (backup to SAVE, full backup, recipe data backup)
  • SAVE (dedicated server, home local)

ACTIVE COMPONENTS

  • grub
    • cgroup1
  • linux
  • rust
    • tera
  • go
  • perl
  • python
    • ovh
  • bash
    • miaou-bash

Debian12 fresh install

Nested container test drive

  • CONTAINER=nested
  • lxc-miaou-create $CONTAINER -o sameuser,nesting
  • lxc sameuser $CONTAINER
    • /opt/miaou/lib/install.sh dev

Hardening server

  • /opt/miaou/lib/harden.sh

Development mode

  • requirement Codium IDE

  • sudo apt install y shellcheck shfmt