# Netoïk cache server ![badge](https://git.netoik.io/samuel/netoik-cache/actions/workflows/ci.yaml/badge.svg) Build an RPM package which will install a Cache server: - `Valkey` (a fork of `Redis` recommended from RockyLinux 10) with: - custom configuration file - custom service file # Development A `Makefile` is integrated to let you run some basic commands. - Display some information about the project ```shell make help make name make version make release make arch ``` - Build a tarball: ```shell make tarball ``` - Build an rpm package: ```shell rpmbuild -ba netoik-cache.spec ``` - Upload rpm package to Gitea repository (env var `PKG_TOKEN` is required): ```shell make upload ``` # CI / CD Two workflows are set up. - Continuous Integration: - triggered by each push on branch `main` - builds tarball - builds rpm package - Continuous Delivery: - triggered by each tag pushed - builds tarball - builds rpm package - uploads rpm package to `Gitea` repository # Deployment Some commands to deploy the RPM package on server - Add Gitea repo to your repo list: ```shell dnf config-manager --add-repo https://git.netoik.io/api/packages/samuel/rpm.repo dnf repolist | grep gitea-samuel ``` - Show available versions: ```shell dnf --showduplicates netoik-cache ``` - Install or upgrade package: ```shell dnf --nogpgcheck --refresh --assumeyes --best install netoik-cache ``` # Security Notes For security reasons, act runners does not have sudo privileges and so there is: - **no** Continuous Deployment because act runners cannot use `dnf` - **no** GPG signing because act runners cannot use `gpg`