[Tarantool-patches] [PATCH v2 1/2] github-ci: purge Debian Jessie from CI

Igor Munkin imun at tarantool.org
Mon Jan 25 22:14:42 MSK 2021


CMake 3.1 or newer is essential for implementing LuaJIT self-sufficient
testing environment (see more info in the next patch). Unfortunately,
not all distributions provide the required CMake from the repositories.
Here is the actual list of default packages providing CMake for the
distributions that support Tarantool:
| Distro             | CMake version | Repo                |
|--------------------+---------------+---------------------|
| CentOS 6           | 2.8.12        | base                |
| CentOS 7           | 2.8.12        | base                |
| CentOS 8           | 3.11.4        | appstream           |
| Debian Jessie      | 3.0.2         | jessie/main         |
| Debian Stretch     | 3.7.2         | stretch/main        |
| Debian Buster      | 3.13.4        | buster/main         |
| Fedora 28          | 3.14.4        | updates             |
| Fedora 29          | 3.14.5        | updates             |
| Fedora 30          | 3.17.2        | updates             |
| Fedora 31          | 3.17.4        | updates             |
| Fedora 32          | 3.17.4        | updates             |
| FreeBSD 12         | 3.15.5        | default             |
| OSX 14             | 3.19.3        | brew                |
| OSX 15             | 3.19.3        | brew                |
| Ubuntu 14.04       | 2.8.12        | trusty/main         |
| Ubuntu 16.04       | 3.5.1         | xenial-updates/main |
| Ubuntu 18.04       | 3.10.2        | bionic-updates/main |
| Ubuntu 20.04       | 3.16.3        | focal/main          |
| openSUSE Leap 15.1 | 3.10.2        | Main                |
| openSUSE Leap 15.2 | 3.17.0        | Main                |

As one can see, there are no required packages provided by default for
the following distributions: CentOS 6, CentOS 7, Debian Jessie and
Ubuntu 14.04. There are alternative packages (i.e. cmake3) providing a
newer CMake than the default one for the old packages:
| Distro             | CMake3 version  | Repo                    |
|--------------------+-----------------+-------------------------|
| CentOS 6           | 3.6.1           | epel*                   |
| CentOS 7           | 3.17.5          | epel*                   |
| Ubuntu 14.04       | 3.5.1           | trusty-updates/universe |

(*) Unfortunately, I failed to find the way to make rpmbuild install
    and enable EPEL repository prior to the build step. However,
    cmake3 requirement obligues user to enable EPEL by himself,
    otherwise this dependency is left unmet. If there are any issues
    with building an RPM on CentOS 7 please proceed to the docs[1]

So the last problem is Debian Jessie: the required CMake toolchain is
provided neither via the default repository nor via the auxiliary one
(e.g. kinda updates repository like it's done for Ubuntu 14.04). Anyway,
Debian Jessie long term support has reached its EOL[2], so we can freely
drop this distribution from our regular build testing.

[1]: https://www.tarantool.io/en/doc/latest/dev_guide/building_from_source/
[2]: https://www.debian.org/News/2020/20200709

Relates to #4862

Signed-off-by: Igor Munkin <imun at tarantool.org>
---
 .github/workflows/debian_8.yml | 58 ----------------------------------
 1 file changed, 58 deletions(-)
 delete mode 100644 .github/workflows/debian_8.yml

diff --git a/.github/workflows/debian_8.yml b/.github/workflows/debian_8.yml
deleted file mode 100644
index fe7fdfe6b..000000000
--- a/.github/workflows/debian_8.yml
+++ /dev/null
@@ -1,58 +0,0 @@
-name: debian_8
-
-on: [push, pull_request]
-
-env:
-  CI_MAKE: make -f .gitlab.mk
-
-jobs:
-  debian_8:
-    # We want to run on external PRs, but not on our own internal PRs
-    # as they'll be run by the push to the branch.
-    if: github.event_name == 'push' ||
-        github.event.pull_request.head.repo.full_name != github.repository
-
-    runs-on: ubuntu-latest
-
-    strategy:
-      fail-fast: false
-
-    steps:
-      - uses: actions/checkout at v2.3.4
-        with:
-          fetch-depth: 0
-          submodules: recursive
-      - name: packaging
-        env:
-          # Our testing expects that the init process (PID 1) will
-          # reap orphan processes. At least the following test leans
-          # on it: app-tap/gh-4983-tnt-e-assert-false-hangs.test.lua.
-          PACKPACK_EXTRA_DOCKER_RUN_PARAMS: '--init'
-          AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
-          AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
-          AWS_S3_ENDPOINT_URL: ${{ secrets.AWS_S3_ENDPOINT_URL }}
-          LIVE_REPO_S3_DIR: ${{ secrets.LIVE_REPO_S3_DIR }}
-          RELEASE_REPO_S3_DIR: ${{ secrets.RELEASE_REPO_S3_DIR }}
-          GPG_SECRET_KEY: ${{ secrets.GPG_SECRET_KEY }}
-          GPG_SIGN_KEY: ${{ secrets.GPG_SIGN_KEY }}
-        run: |
-          if ${{ github.event_name == 'push' &&
-              ( github.ref == 'refs/heads/master' ||
-                github.ref == 'refs/heads/1.10' ||
-                startsWith(github.ref, 'refs/heads/2.') ||
-                startsWith(github.ref, 'refs/tags') ) }} ; then
-            sudo apt-get -y update
-            sudo apt-get install -y procmail createrepo awscli reprepro
-            mkdir -p ~/.gnupg
-            echo 'digest-algo sha256' >> ~/.gnupg/gpg.conf
-            OS=debian DIST=jessie ${CI_MAKE} deploy
-          else
-            OS=debian DIST=jessie ${CI_MAKE} package
-          fi
-      - name: artifacts
-        uses: actions/upload-artifact at v2
-        if: failure()
-        with:
-          name: debian-jessie
-          retention-days: 21
-          path: test/var/artifacts
-- 
2.25.0



More information about the Tarantool-patches mailing list