@@ -9,22 +9,34 @@ COMPONENTS=${3-}
99set -e
1010
1111case $( < /etc/redhat-release) in
12- CentOS* \ 6* ) OS=centos6 ;;
1312 CentOS* \ 7* ) OS=centos7 ;;
13+ CentOS\ Stream* \ 8* ) OS=centos-stream-8;;
14+ CentOS\ Stream* \ 9* ) OS=centos-stream-9;;
1415 Rocky\ Linux* \ 8* ) OS=rockylinux8 ;;
1516 * ) OS=unknown ;;
1617esac
1718
1819# EPEL required for UDT
1920case $OS in
20- centos6) yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
21- ;;
22- centos7) yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
21+ # from `https://docs.fedoraproject.org/en-US/epel/#_quickstart`
22+ centos7) yum -y install epel-release
2323 ;;
2424 rockylinux8)
25- yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
2625 dnf -y install dnf-plugins-core
2726 dnf config-manager --set-enabled powertools
27+ dnf -y install epel-release
28+ ;;
29+ centos-stream-8)
30+ dnf -y install dnf-plugins-core
31+ dnf config-manager --set-enabled powertools
32+ dnf -y install epel-release epel-next-release
33+ ;;
34+ centos-stream-9)
35+ dnf -y install dnf-plugins-core
36+ dnf config-manager --set-enabled crb
37+ dnf -y install \
38+ https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm \
39+ https://dl.fedoraproject.org/pub/epel/epel-next-release-latest-9.noarch.rpm
2840 ;;
2941esac
3042
@@ -35,12 +47,25 @@ packages=(gcc gcc-c++ make autoconf automake libtool \
3547 libtool-ltdl-devel openssl openssl-devel git \
3648 ' perl(Test)' ' perl(Test::More)' ' perl(File::Spec)' \
3749 ' perl(URI)' file sudo bison patch curl \
38- pam pam-devel libedit libedit-devel)
50+ pam pam-devel libedit libedit-devel )
3951
40- if [[ $OS == rockylinux8 ]]; then
52+ if [[ $OS != centos7 ]]; then
4153
4254 # provides `cmp` used by `packaging/git-dirt-filter`
4355 packages+=(diffutils)
56+ if [[ $OS == centos-stream-9 ]]; then
57+
58+ # also install "zlib zlib-devel" because it's needed for `configure`ing
59+ # "gridftp/server/src"
60+ packages+=(zlib zlib-devel)
61+ # "per-English" isn't installed by default, so install it explicitly,
62+ # because needed for "gridmap-tools-test.pl"
63+ packages+=(perl-English)
64+ # "perl-Sys-Hostname" isn't installed by default, so install it explicitly,
65+ # because needed for globus_ftp_client test scripta.
66+ # see https://github.com/fscheiner/gct/runs/5144915195?check_suite_focus=true#step:3:15649
67+ packages+=(perl-Sys-Hostname)
68+ fi
4469fi
4570
4671if [[ $TASK == tests ]]; then
@@ -71,8 +96,11 @@ elif [[ $TASK == *rpms ]]; then
7196 packages+=(pam libedit libedit-devel)
7297fi
7398
74-
75- yum -y -d1 install " ${packages[@]} "
99+ if [[ $OS == centos7 ]]; then
100+ yum -y -d1 install " ${packages[@]} "
101+ else
102+ dnf --allowerasing -y -d1 install " ${packages[@]} "
103+ fi
76104
77105# UID of travis user inside needs to match UID of travis user outside
78106getent passwd travis > /dev/null || useradd travis -u $TRAVISUID -o
0 commit comments