spcd/readme.md
2024-07-21 20:50:19 +02:00

3.8 KiB

Shell to Python Continuous Deployment

Get a common set of Python CI & CD commands
from various contexts of CA, CI and OCI / OS.

Features

  • Certification Authority certificates
    • custom
    • known
  • Continuous Integration platforms
    • ForgeJo
    • Gitea
    • GitHub
    • GitLab
    • SourceHut
  • Operating Systems
    • Alma
      • 9
      • 8
    • Alpine
      • 3.20
      • 3.19
    • Arch
      • 20240101
      • 20231112
    • Debian
      • Bookworm (12)
      • Bullseye (11)
    • Fedora → Python 3.12
      • 40
      • 39
    • Rocky
      • 9
      • 8
    • Ubuntu
      • Noble (24.04)
      • Jammy (22.04)

How

Variable Description Default
SPCD_BRANCH_RELEASE Release deployment branch main
SPCD_BRANCH_STAGING Staging deployment branch dev
SPCD_BRANCH_FEATURE Feature deployment branch f
SPCD_CA_n Numbered CA certificate
SPCD_DNS Space separated servers 9.9.9.9
SPCD_GIT_MAIN Main Git repository spcd
SPCD_GIT_ROOT Root Git repository rwx
SPCD_SSH_HOSTS domain.tld ssh-type pub
SPCD_SSH_KEY SSH private key
SPCD_URL_ALMA Alma repository URL https://repo.almalinux.org
SPCD_URL_ALPINE Alpine repository URL https://dl-cdn.alpinelinux.org
SPCD_URL_ARCH Arch repository URL https://geo.mirror.pkgbuild.com
SPCD_URL_DEBIAN Debian repository URL https://deb.debian.org
SPCD_URL_FEDORA Fedora repository URL https://rpmfind.net
SPCD_URL_ROCKY Rocky repository URL https://dl.rockylinux.org
SPCD_URL_UBUNTU Ubuntu repository URL https://ubuntu.mirrors.ovh.net

Packages

OS image s u py py++ gviz shch shf ruf plantuml
Alpine 3.20 3.12 9.0 0.10 3.8 0.4 1.2024.4
Alpine 3.19 3.11 9.0 0.9 3.7 1.2023.12
Arch 20240101 3.12 12.0 0.10 3.8 0.5 1.2023.13
Arch 20231112 3.12 12.0 0.10 3.8 0.5 1.2023.13
Debian Bookworm 3.11 2.42 0.9 3.6 1.2020.2
Debian Bullseye 3.9 2.42 0.7 1.2020.2
Ubuntu Noble 3.12 2.42 0.9 3.8 1.2020.2
Ubuntu Jammy 3.10 2.42 0.8 3.4 1.2020.2
Fedora 40 3.12 3.13 9.0 0.9 3.7 0.4 1.2024.6
Fedora 39 3.12 3.13 8.1 0.9 3.5 0.4 1.2024.6
Alma 9 3.9 3.12 2.44 e0.8 e1.2024.6
Rocky 9 3.9 3.12 2.44 e0.8 e1.2024.6
Alma 8 3.12 2.40 e0.6 e1.2024.6
Rocky 8 3.12 2.40 e0.6 e1.2024.6

Tasks

  • relay environment module name
  • write tests

.py

  • detect ssh private key type
  • implement project repository cloning
  • install
    • epel
      • plantuml
      • shellcheck
    • graphviz
    • openssh
    • pip
      • ruff
    • rsync
    • shfmt
  • lint
    • .py
    • .sh

.sh

  • support opensuse