2024-06-27 11:54:46 +00:00
|
|
|
# Shell to Python Continuous Deployment
|
2024-04-29 11:04:36 +00:00
|
|
|
|
2024-06-21 11:29:18 +00:00
|
|
|
Get a common set of Python CI & CD commands \
|
2024-06-14 08:02:31 +00:00
|
|
|
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-06-25 12:47:42 +00:00
|
|
|
* Certification Authority certificates
|
2024-05-05 20:20:49 +00:00
|
|
|
* [X] custom
|
|
|
|
* [X] known
|
2024-06-25 12:47:42 +00:00
|
|
|
* Continuous Integration platforms
|
2024-06-14 08:02:31 +00:00
|
|
|
* [X] ForgeJo
|
2024-06-17 19:44:22 +00:00
|
|
|
* [X] Gitea
|
|
|
|
* [X] GitHub
|
2024-05-05 20:20:49 +00:00
|
|
|
* [X] GitLab
|
|
|
|
* [ ] SourceHut
|
2024-06-25 12:47:42 +00:00
|
|
|
* Operating Systems
|
2024-07-21 11:24:53 +00:00
|
|
|
* [X] Alma
|
2024-05-05 20:20:49 +00:00
|
|
|
* [X] 9
|
2024-07-12 21:24:50 +00:00
|
|
|
* [X] 8
|
|
|
|
* [X] Alpine
|
2024-07-21 11:24:53 +00:00
|
|
|
* [X] 3.20
|
|
|
|
* [X] 3.19
|
|
|
|
* [X] Arch
|
2024-05-10 20:33:13 +00:00
|
|
|
* [X] 20240101
|
2024-07-12 21:24:50 +00:00
|
|
|
* [ ] 20231112
|
2024-06-25 12:47:42 +00:00
|
|
|
* [X] Debian
|
2024-07-21 11:24:53 +00:00
|
|
|
* [X] Bookworm (12)
|
|
|
|
* [ ] Bullseye (11)
|
2024-07-21 19:24:29 +00:00
|
|
|
* [X] Fedora
|
2024-05-10 20:33:13 +00:00
|
|
|
* [X] 40
|
2024-07-12 21:24:50 +00:00
|
|
|
* [X] 39
|
2024-08-20 06:17:19 +00:00
|
|
|
* [ ] OpenSUSE
|
|
|
|
* [ ] 15.6
|
|
|
|
* [ ] 15.5
|
2024-07-21 11:24:53 +00:00
|
|
|
* [X] Rocky
|
2024-05-05 20:20:49 +00:00
|
|
|
* [X] 9
|
2024-07-12 21:24:50 +00:00
|
|
|
* [X] 8
|
2024-05-05 20:20:49 +00:00
|
|
|
* [X] Ubuntu
|
2024-07-21 11:24:53 +00:00
|
|
|
* [X] Noble (24.04)
|
2024-08-20 12:21:49 +00:00
|
|
|
* [ ] Jammy (22.04)
|
2024-04-29 11:04:36 +00:00
|
|
|
|
2024-05-02 08:58:02 +00:00
|
|
|
## How
|
|
|
|
|
2024-07-20 16:07:42 +00:00
|
|
|
| Variable | Description | Default |
|
|
|
|
|:--------------------|:--------------------------|:--------------------------------|
|
|
|
|
| SPCD_BRANCH_RELEASE | Release deployment branch | main |
|
|
|
|
| SPCD_BRANCH_STAGING | Staging deployment branch | dev |
|
|
|
|
| SPCD_BRANCH_FEATURE | Feature deployment branch | f |
|
2024-08-06 10:53:23 +00:00
|
|
|
| SPCD_CA_n | Numbered CA certificates | |
|
2024-08-19 12:27:10 +00:00
|
|
|
| SPCD_CMD_SUM | Command to check sums | sha512sum |
|
2024-08-06 10:53:23 +00:00
|
|
|
| SPCD_DNS_n | Numbered name servers | 9.9.9.9 |
|
2024-07-20 16:07:42 +00:00
|
|
|
| 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 |
|
2024-07-22 15:12:44 +00:00
|
|
|
| SPCD_URL_EPEL | EPEL repository URL | https://dl.fedoraproject.org |
|
2024-07-20 16:07:42 +00:00
|
|
|
| SPCD_URL_FEDORA | Fedora repository URL | https://rpmfind.net |
|
2024-08-20 09:40:16 +00:00
|
|
|
| SPCD_URL_OPENSUSE | OpenSUSE repository URL | https://download.opensuse.org |
|
2024-08-07 11:07:49 +00:00
|
|
|
| SPCD_URL_PYTHON | Python repository URL | https://pypi.org/simple |
|
2024-07-20 16:07:42 +00:00
|
|
|
| SPCD_URL_ROCKY | Rocky repository URL | https://dl.rockylinux.org |
|
|
|
|
| SPCD_URL_UBUNTU | Ubuntu repository URL | https://ubuntu.mirrors.ovh.net |
|
2024-05-02 08:58:02 +00:00
|
|
|
|
2024-07-21 17:30:27 +00:00
|
|
|
## Packages
|
2024-05-10 20:25:17 +00:00
|
|
|
|
2024-08-20 07:17:29 +00:00
|
|
|
| os | https | updat-ca | python | graphviz | plantuml | shellcheck | shfmt |
|
|
|
|
|:----------------|---|---|:------------|:------|:-----------|:------|:-----|
|
|
|
|
| Arch 20240101 | ☑ | ☑ | 3.12 | 12.0 | 1.2023.13 | 0.10 | 3.8 |
|
2024-08-20 12:20:21 +00:00
|
|
|
| Fedora 40 | ☑ | ☑ | 3.13 ← 3.12 | 9.0 | 1.2024.6 | 0.9 | 3.7 |
|
2024-08-20 07:17:29 +00:00
|
|
|
| Alpine 3.20 | ☑ | ☐ | 3.12 | 9.0 | 1.2024.4 | 0.10 | 3.8 |
|
|
|
|
| Ubuntu Noble | ☐ | ☐ | 3.12 | u2.42 | u1.2020.2 | u0.9 | u3.8 |
|
|
|
|
| Debian Bookworm | ☐ | ☐ | 3.11 | 2.42 | 1.2020.2 | 0.9 | 3.6 |
|
2024-08-20 12:20:21 +00:00
|
|
|
| OpenSUSE 15.6 | ☐ | ☑ | 3.12 ← 3.6 | 2.48 | 1.2020.9 | 0.8 | 3.5 |
|
|
|
|
| Alma | Rocky 9 | ☑ | ☑ | 3.12 ← 3.9 | 2.44 | e1.2024.6 | e0.8 | |
|
2024-08-20 07:17:29 +00:00
|
|
|
|
|
|
|
| os | https | updat-ca | python | graphviz | plantuml | shellcheck | shfmt |
|
|
|
|
|:----------------|---|---|:------------|:------|:-----------|:------|:-----|
|
2024-08-20 12:20:21 +00:00
|
|
|
| Fedora 39 | ☑ | ☑ | 3.13 ← 3.12 | 8.1 | 1.2024.6 | 0.9 | 3.5 |
|
2024-08-20 07:17:29 +00:00
|
|
|
| Alpine 3.19 | ☑ | ☐ | 3.11 | 9.0 | 1.2023.12 | 0.9 | 3.7 |
|
2024-08-20 12:20:21 +00:00
|
|
|
| OpenSUSE 15.5 | ☐ | ☑ | 3.11 ← 3.6 | 2.48 | 1.2020.9 | 0.8 | 3.5 |
|
|
|
|
| Alma | Rocky 8 | ☑ | ☑ | 3.12 ← 3.6 | 2.40 | e1.2024.6 | e0.6 | |
|
2024-08-20 12:11:49 +00:00
|
|
|
|
|
|
|
| os | https | updat-ca | python | graphviz | plantuml | shellcheck | shfmt |
|
|
|
|
|:----------------|---|---|:------------|:------|:-----------|:------|:-----|
|
|
|
|
| Ubuntu Jammy | ☐ | ☐ | 3.10 | u2.42 | u1.2020.2 | u0.8 | u3.4 |
|
2024-08-20 07:24:30 +00:00
|
|
|
| Debian Bullseye | ☐ | ☐ | 3.9 | 2.42 | 1.2020.2 | 0.7 | |
|
2024-05-10 20:25:17 +00:00
|
|
|
|
2024-04-29 11:04:36 +00:00
|
|
|
## Tasks
|
|
|
|
|
2024-08-19 12:27:10 +00:00
|
|
|
### sh
|
|
|
|
|
2024-08-20 10:54:21 +00:00
|
|
|
* review repositories handling for systems
|
2024-08-20 11:57:02 +00:00
|
|
|
* opensuse
|
|
|
|
* codecs repository
|
|
|
|
* disable & enable https
|
2024-08-19 18:33:11 +00:00
|
|
|
* write tests
|
2024-08-19 12:27:10 +00:00
|
|
|
|
|
|
|
### sh → py
|
|
|
|
|
|
|
|
* check file & variable sums
|
2024-08-19 12:43:46 +00:00
|
|
|
* install system packages
|
|
|
|
* epel
|
|
|
|
* plantuml
|
|
|
|
* shellcheck
|
2024-08-20 08:39:01 +00:00
|
|
|
* shunit | bats
|
2024-08-19 12:43:46 +00:00
|
|
|
* graphviz
|
|
|
|
* openssh
|
|
|
|
* rsync
|
|
|
|
* shfmt
|
2024-08-19 12:38:39 +00:00
|
|
|
* python virtual environment
|
|
|
|
* install system package
|
|
|
|
* configure pip
|
|
|
|
* venv
|
|
|
|
* create
|
|
|
|
* activate
|
2024-08-20 12:04:17 +00:00
|
|
|
* relay environment module name
|
2024-08-19 12:27:10 +00:00
|
|
|
|
|
|
|
### py
|
2024-06-14 07:16:28 +00:00
|
|
|
|
2024-08-19 18:33:11 +00:00
|
|
|
* check
|
2024-06-14 09:59:10 +00:00
|
|
|
* .py
|
|
|
|
* .sh
|
2024-08-20 12:04:17 +00:00
|
|
|
* maximum line length
|
|
|
|
* detect ssh private key type
|
|
|
|
* list sys.path
|
|
|
|
* set workflow templates
|
|
|
|
* actions
|
|
|
|
* includes
|
2024-08-19 18:33:11 +00:00
|
|
|
* write tests
|