spcd/readme.md

102 lines
2.8 KiB
Markdown
Raw Normal View History

2024-04-29 11:04:36 +00:00
# Continuous Deployment
2024-06-14 08:02:31 +00:00
Get a common set of Python CI/CD commands \
from various contexts of CA, CI and OCI / OS.
2024-05-03 13:11:58 +00:00
2024-04-29 11:04:36 +00:00
## Features
2024-05-05 20:20:49 +00:00
* [X] CA certificates
* [X] custom
* [X] known
* [ ] Continuous Integration platforms
2024-06-14 08:02:31 +00:00
* [X] ForgeJo
* [ ] Gitea
* [ ] GitHub
2024-05-05 20:20:49 +00:00
* [X] GitLab
* [ ] SourceHut
2024-05-10 20:33:13 +00:00
* [X] Operating Systems
2024-05-06 09:50:31 +00:00
* [X] Alma → Python 3.11
2024-05-05 20:20:49 +00:00
* [X] 8
* [X] 9
2024-05-06 09:50:31 +00:00
* [X] Alpine → Python 3.11
2024-05-05 20:20:49 +00:00
* [X] 3.18
* [X] 3.19
2024-05-10 20:33:13 +00:00
* [X] Arch → Python 3.12
2024-05-11 10:23:40 +00:00
* [ ] 20231112
2024-05-10 20:33:13 +00:00
* [X] 20240101
2024-05-05 20:20:49 +00:00
* [X] Debian
2024-06-14 10:01:28 +00:00
* [ ] Bullseye (11) → Python 3.9
2024-05-06 09:50:31 +00:00
* [X] Bookworm (12) → Python 3.11
2024-05-10 20:33:13 +00:00
* [X] Fedora → Python 3.12
* [X] 39
* [X] 40
2024-05-06 09:50:31 +00:00
* [X] Rocky → Python 3.11
2024-05-05 20:20:49 +00:00
* [X] 8
* [X] 9
* [X] Ubuntu
2024-05-06 09:55:00 +00:00
* [X] Jammy (22.04) → Python 3.10
2024-05-06 09:50:31 +00:00
* [X] Noble (24.04) → Python 3.12
2024-04-29 11:04:36 +00:00
2024-05-02 08:58:02 +00:00
## How
2024-06-02 14:29:41 +00:00
| Variable | Description | Default |
|:--------------|:------------------------|:--------------------------------|
| CD_CA_n | Numbered CA certificate | |
| CD_DNS | Space separated servers | 9.9.9.9 |
| CD_GIT_CHILD | Child Git repository | cd |
| CD_GIT_PARENT | Parent Git repository | rwx |
| CD_SSH_HOSTS | domain.tld ssh-type pub | |
| CD_SSH_KEY | SSH private key | |
| CD_URL_ALMA | Alma repository URL | https://repo.almalinux.org |
| CD_URL_ALPINE | Alpine repository URL | https://dl-cdn.alpinelinux.org |
| CD_URL_ARCH | Arch repository URL | https://geo.mirror.pkgbuild.com |
| CD_URL_DEBIAN | Debian repository URL | https://deb.debian.org |
| CD_URL_FEDORA | Fedora repository URL | https://rpmfind.net |
| CD_URL_ROCKY | Rocky repository URL | https://dl.rockylinux.org |
| CD_URL_UBUNTU | Ubuntu repository URL | https://ubuntu.mirrors.ovh.net |
2024-05-02 08:58:02 +00:00
2024-05-10 20:25:17 +00:00
## HTTPS & Python
2024-05-11 10:38:07 +00:00
| OS img | crt | upd | Python |
|:--------|-----|-----|:-------|
| Alma 8 | ☑ | ☑ | ☐ |
| Alma 9 | ☑ | ☑ | ☑ 3.9 |
| Alpine | ☑ | ☐ | ☐ |
| Arch | ☑ | ☑ | ☐ |
| Debian | ☐ | ☐ | ☐ |
| Fedora | ☑ | ☑ | ☑ 3.12 |
| Rocky 8 | ☑ | ☑ | ☐ |
| Rocky 9 | ☑ | ☑ | ☑ 3.9 |
| Ubuntu | ☐ | ☐ | ☐ |
2024-05-10 20:25:17 +00:00
2024-04-29 11:04:36 +00:00
## Tasks
2024-06-14 07:55:16 +00:00
* relay environment module name
2024-05-04 08:32:50 +00:00
* show previous states of directories & files
2024-06-14 07:55:16 +00:00
* test with github
* test with gitea
* write tests
2024-06-14 07:16:28 +00:00
### .py
2024-06-14 07:55:16 +00:00
* detect ssh private key type
* implement project repository cloning
* install
2024-06-14 09:59:10 +00:00
* epel
* shellcheck
2024-06-14 07:55:16 +00:00
* openssh
2024-06-14 09:59:10 +00:00
* pip
* ruff
2024-06-14 07:55:16 +00:00
* rsync
2024-06-14 09:59:10 +00:00
* lint
* .py
* .sh
2024-06-14 07:55:16 +00:00
* write bootstrap entry point
2024-06-14 07:16:28 +00:00
### .sh
2024-06-14 07:55:16 +00:00
* handle git cloning credentials
* override repository and framework locations
* reduce single conditions with &&
* support opensuse