aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@rspamd.com>2024-09-24 22:09:51 +0600
committerGitHub <noreply@github.com>2024-09-24 22:09:51 +0600
commitf8700e56ec5659f331f0aca0b28eec43a4e7cb33 (patch)
tree999c6c7bd2ea52fc5352ed03275f4cef0cfa80c7 /.github/workflows
parent3dda59641af8826d50dd07bc82d67c9ffecef403 (diff)
parent464045f814b78b2d4f9ca20cc9e0a0a1b323ad8e (diff)
downloadrspamd-vstakhov-utf8-mime.tar.gz
rspamd-vstakhov-utf8-mime.zip
Merge branch 'master' into vstakhov-utf8-mimevstakhov-utf8-mime
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/ci.yml18
-rw-r--r--.github/workflows/ci_rspamd_build.yml53
2 files changed, 71 insertions, 0 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d92d5105e..07c4cc4d0 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -23,3 +23,21 @@ jobs:
with:
image: ghcr.io/rspamd/rspamd-build-docker:ubuntu-ci
name: ubuntu-ci
+
+ ubuntu-focal:
+ uses: ./.github/workflows/ci_rspamd_build.yml
+ with:
+ image: ghcr.io/rspamd/rspamd-build-docker:ubuntu-focal
+ name: ubuntu-focal
+
+ centos-8:
+ uses: ./.github/workflows/ci_rspamd_build.yml
+ with:
+ image: ghcr.io/rspamd/rspamd-build-docker:centos-8
+ name: centos-8
+
+ centos-9:
+ uses: ./.github/workflows/ci_rspamd_build.yml
+ with:
+ image: ghcr.io/rspamd/rspamd-build-docker:centos-9
+ name: centos-9
diff --git a/.github/workflows/ci_rspamd_build.yml b/.github/workflows/ci_rspamd_build.yml
new file mode 100644
index 000000000..9503f1974
--- /dev/null
+++ b/.github/workflows/ci_rspamd_build.yml
@@ -0,0 +1,53 @@
+name: rspamd_build
+
+on:
+ workflow_call:
+ inputs:
+ image:
+ required: true
+ type: string
+ name:
+ required: true
+ type: string
+
+jobs:
+ test:
+ runs-on: [ "ubuntu-latest" ]
+ container:
+ image: ${{ inputs.image }}
+ options: --user root
+ steps:
+ - name: Create directories
+ run: |
+ sudo mkdir -p ${GITHUB_WORKSPACE}
+
+ - name: Check out source code
+ uses: actions/checkout@v4
+ with:
+ path: src
+
+ - name: Set variables on ARM64
+ if: runner.arch == 'ARM64'
+ run: echo "HYPERSCAN_ALTROOT=-DHYPERSCAN_ROOT_DIR=/vectorscan" >> "$GITHUB_ENV"
+
+ - name: Run cmake
+ run: |
+ mkdir ${GITHUB_WORKSPACE}/build
+ cd ${GITHUB_WORKSPACE}/build
+ if [[ -f /opt/rh/gcc-toolset-10/enable ]] ; then source /opt/rh/gcc-toolset-10/enable ; fi
+ cmake -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/install -DCMAKE_RULE_MESSAGES=OFF -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_COVERAGE=ON -DENABLE_LIBUNWIND=ON -DENABLE_LUAJIT=ON -DLUA_ROOT=/luajit-build -DENABLE_HYPERSCAN=ON ${{ env.HYPERSCAN_ALTROOT }} ${GITHUB_WORKSPACE}/src
+
+ - name: Build rspamd
+ run: |
+ if [[ -f /opt/rh/gcc-toolset-10/enable ]] ; then source /opt/rh/gcc-toolset-10/enable ; fi
+ cd ${GITHUB_WORKSPACE}/build
+ ncpu=$(getconf _NPROCESSORS_ONLN)
+ make -j $ncpu install
+ make -j $ncpu rspamd-test
+ make -j $ncpu rspamd-test-cxx
+
+ - name: Run unit tests
+ if: "!(inputs.name == 'ubuntu-ci' && runner.arch == 'ARM64')"
+ run: |
+ cd ${GITHUB_WORKSPACE}/build
+ make test