diff --git a/.gitea/workflows/builder.yaml b/.gitea/workflows/builder.yaml index 131145b..8a4d63f 100644 --- a/.gitea/workflows/builder.yaml +++ b/.gitea/workflows/builder.yaml @@ -16,7 +16,7 @@ jobs: dnf5 config-manager addrepo --from-repofile https://download.docker.com/linux/fedora/docker-ce.repo - run: dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin - - run: docker pull fedora:42 + - run: docker pull fedora:43 - run: dnf -y install git - run: git config --global url."https://${ACTIONS_RUNTIME_TOKEN}:x-oauth-basic@codex.r10x.net/".insteadOf "${GITHUB_SERVER_URL}" - run: git clone ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY} ${PWD} diff --git a/ci/Dockerfile b/ci/Dockerfile new file mode 100644 index 0000000..1ee2e8c --- /dev/null +++ b/ci/Dockerfile @@ -0,0 +1,23 @@ +FROM fedora:43 AS basic + +ENV PYTHONUNBUFFERED=1 + +COPY ci/dnf.conf /etc/dnf/dnf.conf +COPY \ + ci/pre.sh \ + ci/pip.sh \ + ci/docker.sh \ + ci/minio.sh \ + ci/requirements.txt /root/ + +RUN /root/pre.sh +RUN /root/docker.sh +RUN /root/pip.sh +RUN /root/minio.sh + +# Python packages +RUN pip3 install -r /root/requirements.txt + +FROM basic + +WORKDIR /app diff --git a/ci/dnf.conf b/ci/dnf.conf new file mode 100644 index 0000000..bba247f --- /dev/null +++ b/ci/dnf.conf @@ -0,0 +1,12 @@ +[main] +gpgcheck=1 +installonly_limit=3 +clean_requirements_on_remove=True +best=False +skip_if_unavailable=True +#zchunk=False +fastestmirror=True +#max_parallel_downloads=10 +#ip_resolve=4 +#minrate=300k +#timeout=20 diff --git a/docker.sh b/ci/docker.sh similarity index 100% rename from docker.sh rename to ci/docker.sh diff --git a/minio.sh b/ci/minio.sh similarity index 100% rename from minio.sh rename to ci/minio.sh diff --git a/ci/pip.sh b/ci/pip.sh new file mode 100755 index 0000000..985828e --- /dev/null +++ b/ci/pip.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +set -e + +curl --output /root/get-pip.py https://bootstrap.pypa.io/get-pip.py +python3 /root/get-pip.py +rm /root/get-pip.py diff --git a/ci/pre.sh b/ci/pre.sh new file mode 100755 index 0000000..78ee703 --- /dev/null +++ b/ci/pre.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +set -e + +dnf -y update + +dnf -y install nano rsync wget curl git git-all mc tree openssl \ +unzip zip \ +mtr traceroute net-tools tcpdump bind-utils \ +tcsh sysstat atop chrony ntpstat nginx \ +postgresql + +dnf -y group install standard core \ +hardware-support development-libs development-tools +dnf -y install postgresql-server-devel + +dnf -y clean all diff --git a/requirements.txt b/ci/requirements.txt similarity index 100% rename from requirements.txt rename to ci/requirements.txt