spcd/readme.md
2024-05-31 11:33:30 +02:00

79 lines
2 KiB
Markdown

# Continuous Deployment
Get build-time Python commands \
from various CA, CI, OCI / OS.
## Features
* [X] CA certificates
* [X] custom
* [X] known
* [ ] Continuous Integration platforms
* [X] GitHub → Gitea → ForgeJo
* [X] GitLab
* [ ] SourceHut
* [X] Operating Systems
* [X] Alma → Python 3.11
* [X] 8
* [X] 9
* [X] Alpine → Python 3.11
* [X] 3.18
* [X] 3.19
* [X] Arch → Python 3.12
* [ ] 20231112
* [X] 20240101
* [X] Debian
* [X] Bullseye (11) → Python 3.9
* [X] Bookworm (12) → Python 3.11
* [X] Fedora → Python 3.12
* [X] 39
* [X] 40
* [X] Rocky → Python 3.11
* [X] 8
* [X] 9
* [X] Ubuntu
* [X] Jammy (22.04) → Python 3.10
* [X] Noble (24.04) → Python 3.12
## How
| Variable | Description |
|:--------------|:------------------------|
| CD_CA_n | Numbered CA certificate |
| CD_DNS | Space separated servers |
| CD_SSH_HOSTS | domain.tld ssh-type pub |
| CD_SSH_TYPE | SSH private key type |
| CD_URL_ALMA | Alma repository URL |
| CD_URL_ALPINE | Alpine repository URL |
| CD_URL_ARCH | Arch repository URL |
| CD_URL_DEBIAN | Debian repository URL |
| CD_URL_FEDORA | Fedora repository URL |
| CD_URL_ROCKY | Rocky repository URL |
| CD_URL_UBUNTU | Ubuntu repository URL |
## HTTPS & Python
| OS img | crt | upd | Python |
|:--------|-----|-----|:-------|
| Alma 8 | ☑ | ☑ | ☐ |
| Alma 9 | ☑ | ☑ | ☑ 3.9 |
| Alpine | ☑ | ☐ | ☐ |
| Arch | ☑ | ☑ | ☐ |
| Debian | ☐ | ☐ | ☐ |
| Fedora | ☑ | ☑ | ☑ 3.12 |
| Rocky 8 | ☑ | ☑ | ☐ |
| Rocky 9 | ☑ | ☑ | ☑ 3.9 |
| Ubuntu | ☐ | ☐ | ☐ |
## Tasks
* write bats
* detect private key type
* handle git cloning credentials
* reduce single conditions with &&
* write Python bootstrap process
* integrate project repository cloning
* override repository and framework locations
* show previous states of directories & files