-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #118 from emqx/20240912-resurrect-el7
fix: get back el7 support, update repos to use vault.centos.org
- Loading branch information
Showing
20 changed files
with
1,318 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
ARG BUILD_FROM=centos:7 | ||
FROM ${BUILD_FROM} | ||
ARG TARGETPLATFORM | ||
|
||
COPY el7/RPM-GPG-KEY-CentOS-SIG-SCLo /etc/pki/rpm-gpg/ | ||
COPY el7/yum.repos.d/${TARGETPLATFORM}/* /etc/yum.repos.d/ | ||
|
||
RUN yum clean all && \ | ||
yum makecache && \ | ||
yum install epel-release -y && yum update -y | ||
|
||
RUN yum groupinstall -y "Development Tools" && \ | ||
yum install -y autoconf \ | ||
bison-devel \ | ||
centos-release-scl \ | ||
curl \ | ||
cyrus-sasl \ | ||
cyrus-sasl-devel \ | ||
cyrus-sasl-gssapi \ | ||
devtoolset-8-gcc \ | ||
devtoolset-8-gcc-c++ \ | ||
expect \ | ||
flex-devel \ | ||
jq \ | ||
krb5-server \ | ||
krb5-workstation \ | ||
libatomic \ | ||
libtool \ | ||
ncurses-devel \ | ||
python3 \ | ||
python3-pip \ | ||
systemd \ | ||
unixODBC-devel \ | ||
unzip \ | ||
vim \ | ||
wget \ | ||
which \ | ||
zip \ | ||
zlib-devel | ||
|
||
ADD install-openssl11.sh get-git.sh get-automake.sh get-cmake.sh / | ||
|
||
WORKDIR / | ||
|
||
# We need git >= 2.18 otherwise actions/checkout@v3 in github | ||
# workflows will use REST API to download source code archive without | ||
# .git directory instead of normal git clone. And if release is | ||
# configured to take it's version from git tag, rebar3 will not be | ||
# able to resolve the version correctly and will fallback to 0.0.0, | ||
# like it happened with emqtt-bench. | ||
# The error from actions/checkout@v3 is as follows: | ||
# > The repository will be downloaded using the GitHub REST API | ||
# > To create a local Git repository instead, add Git 2.18 or higher to the PATH | ||
|
||
# - have to uninstall stock git to cleanup all git backend files, | ||
# otherwise git from the newer version may encounter | ||
# an error like "bogus format in GIT_CONFIG_PARAMETERS" | ||
# - gnu99 flag is to address https://gitlab.com/gitlab-org/omnibus-gitlab/-/merge_requests/5948 | ||
# - libcurl-devel is needed to support clone from https remotes | ||
RUN yum remove -y git* \ | ||
&& yum install -y libcurl-devel \ | ||
&& env DEVELOPER_CFLAGS='-std=gnu99' /get-git.sh \ | ||
&& git --version | ||
|
||
RUN /get-automake.sh | ||
RUN /install-openssl11.sh | ||
ENV OPENSSL_ROOT_DIR=/usr/local/openssl | ||
RUN /get-cmake.sh build | ||
|
||
# We have to reinstall `glibc-common` after removing the override just | ||
# for the `arm64` platform build of CentOS 7. While just setting the | ||
# locale works for `amd64`, even `en_US.UTF-8`, which is in the | ||
# override for `arm64`, is not available... | ||
RUN sed -i -e '/override_install_langs/d' /etc/yum.conf && \ | ||
yum -q -y reinstall glibc-common | ||
|
||
RUN alternatives --install /usr/bin/python python /usr/bin/python2 1 && \ | ||
alternatives --install /usr/bin/python python /usr/bin/python3 2 && \ | ||
alternatives --set python /usr/bin/python3 && \ | ||
alternatives --install /usr/bin/pip pip /usr/bin/pip2 1 && \ | ||
alternatives --install /usr/bin/pip pip /usr/bin/pip3 2 && \ | ||
alternatives --set pip /usr/bin/pip3 && \ | ||
sed 's/python/python2/g' -i /usr/bin/yum | ||
|
||
# cleanup | ||
RUN yum clean packages && \ | ||
rm -rf /tmp/* && \ | ||
rm -rf /var/tmp/* && \ | ||
rm /install-openssl11.sh /get-git.sh /get-automake.sh /get-cmake.sh | ||
|
||
ENV BASH_ENV=/opt/rh/devtoolset-8/enable \ | ||
ENV=/opt/rh/devtoolset-8/enable \ | ||
PROMPT_COMMAND=". /opt/rh/devtoolset-8/enable" | ||
|
||
# Elixir complains if runs without UTF-8 | ||
# CentOS 7, exceptionally, has an `en_US.UTF-8` override as does not | ||
# have `C.UTF-8`. | ||
ENV LC_ALL=en_US.UTF-8 | ||
ENV LANG=en_US.UTF-8 | ||
|
||
# merge the two dirs | ||
ENV ACLOCAL_PATH=/usr/share/aclocal:/usr/local/share/aclocal | ||
|
||
CMD [ "/bin/bash" ] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
-----BEGIN PGP PUBLIC KEY BLOCK----- | ||
Version: GnuPG v2.0.22 (GNU/Linux) | ||
|
||
mQENBFYM/AoBCADR9Q5cb+H5ndx+QkzNBQ88wcD+g112yvnHNlSiBMOnNEGHuKPJ | ||
tujZ+eWXP3K6ucJckT91WxfQ2fxPr9jQ0xpZytcHcZdTfn3vKL9+OwR0npp+qmcz | ||
rK8/EzVz/SWSgBQ5xT/HUvaeoVAbzBHSng0r2njnBAqABKAoTxgyRGKSCWduKD32 | ||
7PF2ZpqeDFFhd99Ykt6ar8SlV8ToqH6F7An0ILeejINVbHUxd6+wsbpcOwQ4mGAa | ||
/CPXeqqLGj62ASBv36xQr34hlN/9zQMViaKkacl8zkuvwhuHf4b4VlGVCe6VILpQ | ||
8ytKMV/lcg7YpMfRq4KVWBjCwkvk6zg6KxaHABEBAAG0aENlbnRPUyBTb2Z0d2Fy | ||
ZUNvbGxlY3Rpb25zIFNJRyAoaHR0cHM6Ly93aWtpLmNlbnRvcy5vcmcvU3BlY2lh | ||
bEludGVyZXN0R3JvdXAvU0NMbykgPHNlY3VyaXR5QGNlbnRvcy5vcmc+iQE5BBMB | ||
CgAjAhsDBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AFAmIgbg0ACgkQTrhOcfLu | ||
nVUzkAgAgJSl++PWo69OGI8eUn53whhfJ6ZyKCOyI9+Flghtfwq1mdcP4dIoAubw | ||
nlQcvEsE4Erob2I1S+n/dXYh9y2+Si3HdXRreKzC1rCSG5ebYRrEqeMoJhBoDFSd | ||
xydtxi03l+Dh2iWtLtXpAM85qHvgIrPfdUnLRVbDBT52Ph5igZl8ux2ooJ94CPm4 | ||
yTG/0aPIebNQsLP8LEpa2wad2WJfIeFgjEHranWIzhzapGgwyf2Iu9Sz3L8ljiz2 | ||
2HixHpI2es3IqgLyRsTBo2/EdbvMJWlFwiESe1UQIW6ObKNnVabIHUAxZgOlj59o | ||
JhPOzTBG+Ma2fLs+ZFBV88cpKdctFQ== | ||
=+Gr2 | ||
-----END PGP PUBLIC KEY BLOCK----- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
# CentOS-Base.repo | ||
# | ||
# The mirror system uses the connecting IP address of the client and the | ||
# update status of each mirror to pick mirrors that are updated to and | ||
# geographically close to the client. You should use this for CentOS updates | ||
# unless you are manually picking other mirrors. | ||
# | ||
# If the mirrorlist= does not work for you, as a fall back you can try the | ||
# remarked out baseurl= line instead. | ||
# | ||
# | ||
|
||
[base] | ||
name=CentOS-$releasever - Base | ||
baseurl=http://vault.centos.org/$releasever/os/$basearch/ | ||
gpgcheck=1 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
||
#released updates | ||
[updates] | ||
name=CentOS-$releasever - Updates | ||
baseurl=http://vault.centos.org/$releasever/updates/$basearch/ | ||
gpgcheck=1 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
||
#additional packages that may be useful | ||
[extras] | ||
name=CentOS-$releasever - Extras | ||
baseurl=http://vault.centos.org/$releasever/extras/$basearch/ | ||
gpgcheck=1 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
enabled=1 | ||
|
||
#additional packages that extend functionality of existing packages | ||
[centosplus] | ||
name=CentOS-$releasever - Plus | ||
baseurl=http://vault.centos.org/$releasever/centosplus/$basearch/ | ||
gpgcheck=1 | ||
enabled=0 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
||
[centos-sclo-rh] | ||
name=CentOS-$releasever - SCLo rh | ||
baseurl=http://vault.centos.org/$releasever/sclo/$basearch/rh/ | ||
gpgcheck=1 | ||
enabled=1 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo | ||
|
||
[centos-sclo-sclo] | ||
name=CentOS-$releasever - SCLo sclo | ||
baseurl=http://vault.centos.org/$releasever/sclo/$basearch/sclo/ | ||
gpgcheck=1 | ||
enabled=1 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# CentOS-CR.repo | ||
# | ||
# The Continuous Release ( CR ) repository contains rpms that are due in the next | ||
# release for a specific CentOS Version ( eg. next release in CentOS-7 ); these rpms | ||
# are far less tested, with no integration checking or update path testing having | ||
# taken place. They are still built from the upstream sources, but might not map | ||
# to an exact upstream distro release. | ||
# | ||
# These packages are made available soon after they are built, for people willing | ||
# to test their environments, provide feedback on content for the next release, and | ||
# for people looking for early-access to next release content. | ||
# | ||
# The CR repo is shipped in a disabled state by default; its important that users | ||
# understand the implications of turning this on. | ||
# | ||
# NOTE: We do not use a mirrorlist for the CR repos, to ensure content is available | ||
# to everyone as soon as possible, and not need to wait for the external | ||
# mirror network to seed first. However, many local mirrors will carry CR repos | ||
# and if desired you can use one of these local mirrors by editing the baseurl | ||
# line in the repo config below. | ||
# | ||
|
||
[cr] | ||
name=CentOS-$releasever - cr | ||
baseurl=http://vault.centos.org/$releasever/cr/$basearch/ | ||
gpgcheck=1 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
enabled=0 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# CentOS-Media.repo | ||
# | ||
# This repo can be used with mounted DVD media, verify the mount point for | ||
# CentOS-7. You can use this repo and yum to install items directly off the | ||
# DVD ISO that we release. | ||
# | ||
# To use this repo, put in your DVD and use it with the other repos too: | ||
# yum --enablerepo=c7-media [command] | ||
# | ||
# or for ONLY the media repo, do this: | ||
# | ||
# yum --disablerepo=\* --enablerepo=c7-media [command] | ||
|
||
[c7-media] | ||
name=CentOS-$releasever - Media | ||
baseurl=file:///media/CentOS/ | ||
file:///media/cdrom/ | ||
file:///media/cdrecorder/ | ||
gpgcheck=1 | ||
enabled=0 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# CentOS-Sources.repo | ||
# | ||
# The mirror system uses the connecting IP address of the client and the | ||
# update status of each mirror to pick mirrors that are updated to and | ||
# geographically close to the client. You should use this for CentOS updates | ||
# unless you are manually picking other mirrors. | ||
# | ||
# If the mirrorlist= does not work for you, as a fall back you can try the | ||
# remarked out baseurl= line instead. | ||
# | ||
# | ||
|
||
[base-source] | ||
name=CentOS-$releasever - Base Sources | ||
baseurl=http://vault.centos.org/centos/$releasever/os/Source/ | ||
gpgcheck=1 | ||
enabled=0 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
||
#released updates | ||
[updates-source] | ||
name=CentOS-$releasever - Updates Sources | ||
baseurl=http://vault.centos.org/centos/$releasever/updates/Source/ | ||
gpgcheck=1 | ||
enabled=0 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
||
#additional packages that may be useful | ||
[extras-source] | ||
name=CentOS-$releasever - Extras Sources | ||
baseurl=http://vault.centos.org/centos/$releasever/extras/Source/ | ||
gpgcheck=1 | ||
enabled=0 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 | ||
|
||
#additional packages that extend functionality of existing packages | ||
[centosplus-source] | ||
name=CentOS-$releasever - Plus Sources | ||
baseurl=http://vault.centos.org/centos/$releasever/centosplus/Source/ | ||
gpgcheck=1 | ||
enabled=0 | ||
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 | ||
file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7-aarch64 |
Oops, something went wrong.