Compare commits
5 Commits
fix_finali
...
release/2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0339f2cebe | ||
|
|
3c38cdc691 | ||
|
|
ea969ba951 | ||
|
|
d7156cbb9f | ||
|
|
e793ef6099 |
34
.github/workflows/package_all.yaml
vendored
34
.github/workflows/package_all.yaml
vendored
@@ -160,6 +160,23 @@ jobs:
|
|||||||
name: debian-11-platform
|
name: debian-11-platform
|
||||||
path: build/output/debian-11/memgraph*.deb
|
path: build/output/debian-11/memgraph*.deb
|
||||||
|
|
||||||
|
fedora-36:
|
||||||
|
runs-on: [self-hosted, DockerMgBuild, X64]
|
||||||
|
timeout-minutes: 60
|
||||||
|
steps:
|
||||||
|
- name: "Set up repository"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0 # Required because of release/get_version.py
|
||||||
|
- name: "Build package"
|
||||||
|
run: |
|
||||||
|
./release/package/run.sh package fedora-36
|
||||||
|
- name: "Upload package"
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: fedora-36
|
||||||
|
path: build/output/fedora-36/memgraph*.rpm
|
||||||
|
|
||||||
debian-11-arm:
|
debian-11-arm:
|
||||||
runs-on: [self-hosted, DockerMgBuild, ARM64, strange]
|
runs-on: [self-hosted, DockerMgBuild, ARM64, strange]
|
||||||
timeout-minutes: 60
|
timeout-minutes: 60
|
||||||
@@ -176,3 +193,20 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
name: debian-11-arm
|
name: debian-11-arm
|
||||||
path: build/output/debian-11-arm/memgraph*.deb
|
path: build/output/debian-11-arm/memgraph*.deb
|
||||||
|
|
||||||
|
ubuntu-2204-arm:
|
||||||
|
runs-on: [self-hosted, DockerMgBuild, ARM64, strange]
|
||||||
|
timeout-minutes: 60
|
||||||
|
steps:
|
||||||
|
- name: "Set up repository"
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
fetch-depth: 0 # Required because of release/get_version.py
|
||||||
|
- name: "Build package"
|
||||||
|
run: |
|
||||||
|
./release/package/run.sh package ubuntu-22.04-arm
|
||||||
|
- name: "Upload package"
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: ubuntu-22.04-arm
|
||||||
|
path: build/output/ubuntu-22.04-arm/memgraph*.deb
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ option(MG_ENTERPRISE "Build Memgraph Enterprise Edition" ON)
|
|||||||
# Set the current version here to override the automatic version detection. The
|
# Set the current version here to override the automatic version detection. The
|
||||||
# version must be specified as `X.Y.Z`. Primarily used when building new patch
|
# version must be specified as `X.Y.Z`. Primarily used when building new patch
|
||||||
# versions.
|
# versions.
|
||||||
set(MEMGRAPH_OVERRIDE_VERSION "")
|
set(MEMGRAPH_OVERRIDE_VERSION "2.5.2")
|
||||||
|
|
||||||
# Custom suffix that this version should have. The suffix can be any arbitrary
|
# Custom suffix that this version should have. The suffix can be any arbitrary
|
||||||
# string. Primarily used when building a version for a specific customer.
|
# string. Primarily used when building a version for a specific customer.
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ TOOLCHAIN_BUILD_DEPS=(
|
|||||||
diffutils
|
diffutils
|
||||||
libipt libipt-devel # intel
|
libipt libipt-devel # intel
|
||||||
patch
|
patch
|
||||||
|
perl # for openssl
|
||||||
)
|
)
|
||||||
|
|
||||||
TOOLCHAIN_RUN_DEPS=(
|
TOOLCHAIN_RUN_DEPS=(
|
||||||
@@ -36,7 +37,6 @@ TOOLCHAIN_RUN_DEPS=(
|
|||||||
readline # for cmake and llvm
|
readline # for cmake and llvm
|
||||||
libffi libxml2 # for llvm
|
libffi libxml2 # for llvm
|
||||||
openssl-devel
|
openssl-devel
|
||||||
perl # for openssl
|
|
||||||
)
|
)
|
||||||
|
|
||||||
MEMGRAPH_BUILD_DEPS=(
|
MEMGRAPH_BUILD_DEPS=(
|
||||||
@@ -64,6 +64,10 @@ list() {
|
|||||||
|
|
||||||
check() {
|
check() {
|
||||||
local missing=""
|
local missing=""
|
||||||
|
# On Fedora yum/dnf and python10 use newer glibc which is not compatible
|
||||||
|
# with ours, so we need to momentarely disable env
|
||||||
|
local OLD_LD_LIBRARY_PATH=${LD_LIBRARY_PATH}
|
||||||
|
LD_LIBRARY_PATH=""
|
||||||
for pkg in $1; do
|
for pkg in $1; do
|
||||||
if ! dnf list installed "$pkg" >/dev/null 2>/dev/null; then
|
if ! dnf list installed "$pkg" >/dev/null 2>/dev/null; then
|
||||||
missing="$pkg $missing"
|
missing="$pkg $missing"
|
||||||
@@ -73,6 +77,7 @@ check() {
|
|||||||
echo "MISSING PACKAGES: $missing"
|
echo "MISSING PACKAGES: $missing"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
LD_LIBRARY_PATH=${OLD_LD_LIBRARY_PATH}
|
||||||
}
|
}
|
||||||
|
|
||||||
install() {
|
install() {
|
||||||
|
|||||||
96
environment/os/ubuntu-22.04-arm.sh
Executable file
96
environment/os/ubuntu-22.04-arm.sh
Executable file
@@ -0,0 +1,96 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -Eeuo pipefail
|
||||||
|
|
||||||
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
||||||
|
source "$DIR/../util.sh"
|
||||||
|
|
||||||
|
check_operating_system "ubuntu-22.04"
|
||||||
|
check_architecture "arm64" "aarch64"
|
||||||
|
|
||||||
|
TOOLCHAIN_BUILD_DEPS=(
|
||||||
|
coreutils gcc g++ build-essential make # generic build tools
|
||||||
|
wget # used for archive download
|
||||||
|
gnupg # used for archive signature verification
|
||||||
|
tar gzip bzip2 xz-utils unzip # used for archive unpacking
|
||||||
|
zlib1g-dev # zlib library used for all builds
|
||||||
|
libexpat1-dev libbabeltrace-dev liblzma-dev python3-dev texinfo # for gdb
|
||||||
|
libcurl4-openssl-dev # for cmake
|
||||||
|
libreadline-dev # for cmake and llvm
|
||||||
|
libffi-dev libxml2-dev # for llvm
|
||||||
|
curl # snappy
|
||||||
|
file
|
||||||
|
git # for thrift
|
||||||
|
libgmp-dev # for gdb
|
||||||
|
gperf # for proxygen
|
||||||
|
libssl-dev
|
||||||
|
libedit-dev libpcre3-dev automake bison # for swig
|
||||||
|
)
|
||||||
|
|
||||||
|
TOOLCHAIN_RUN_DEPS=(
|
||||||
|
make # generic build tools
|
||||||
|
tar gzip bzip2 xz-utils # used for archive unpacking
|
||||||
|
zlib1g # zlib library used for all builds
|
||||||
|
libexpat1 libbabeltrace1 liblzma5 python3 # for gdb
|
||||||
|
libcurl4 # for cmake
|
||||||
|
libreadline8 # for cmake and llvm
|
||||||
|
libffi7 libxml2 # for llvm
|
||||||
|
libssl-dev # for libevent
|
||||||
|
)
|
||||||
|
|
||||||
|
MEMGRAPH_BUILD_DEPS=(
|
||||||
|
git # source code control
|
||||||
|
make pkg-config # build system
|
||||||
|
curl wget # for downloading libs
|
||||||
|
uuid-dev default-jre-headless # required by antlr
|
||||||
|
libreadline-dev # for memgraph console
|
||||||
|
libpython3-dev python3-dev # for query modules
|
||||||
|
libssl-dev
|
||||||
|
libseccomp-dev
|
||||||
|
netcat # tests are using nc to wait for memgraph
|
||||||
|
python3 python3-virtualenv python3-pip # for qa, macro_benchmark and stress tests
|
||||||
|
python3-yaml # for the configuration generator
|
||||||
|
libcurl4-openssl-dev # mg-requests
|
||||||
|
sbcl # for custom Lisp C++ preprocessing
|
||||||
|
doxygen graphviz # source documentation generators
|
||||||
|
mono-runtime mono-mcs zip unzip default-jdk-headless # for driver tests
|
||||||
|
dotnet-sdk-6.0 golang nodejs npm
|
||||||
|
autoconf # for jemalloc code generation
|
||||||
|
libtool # for protobuf code generation
|
||||||
|
)
|
||||||
|
|
||||||
|
list() {
|
||||||
|
echo "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
check_all_dpkg "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
install() {
|
||||||
|
cd "$DIR"
|
||||||
|
apt update
|
||||||
|
# If GitHub Actions runner is installed, append LANG to the environment.
|
||||||
|
# Python related tests doesn't work the LANG export.
|
||||||
|
if [ -d "/home/gh/actions-runner" ]; then
|
||||||
|
echo "LANG=en_US.utf8" >> /home/gh/actions-runner/.env
|
||||||
|
else
|
||||||
|
echo "NOTE: export LANG=en_US.utf8"
|
||||||
|
fi
|
||||||
|
apt install -y wget
|
||||||
|
for pkg in $1; do
|
||||||
|
if [ "$pkg" == dotnet-sdk-6.0 ]; then
|
||||||
|
if ! dpkg -s dotnet-sdk-6.0 2>/dev/null >/dev/null; then
|
||||||
|
wget -nv https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
|
||||||
|
dpkg -i packages-microsoft-prod.deb
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y apt-transport-https dotnet-sdk-6.0
|
||||||
|
fi
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
apt install -y "$pkg"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
deps=$2"[*]"
|
||||||
|
"$1" "${!deps}"
|
||||||
@@ -51,11 +51,19 @@ CPPCHECK_VERSION=2.6
|
|||||||
LLVM_VERSION=13.0.0
|
LLVM_VERSION=13.0.0
|
||||||
SWIG_VERSION=4.0.2 # used only for LLVM compilation
|
SWIG_VERSION=4.0.2 # used only for LLVM compilation
|
||||||
|
|
||||||
# Check for the dependencies.
|
# Set the right env script
|
||||||
echo "ALL BUILD PACKAGES: $($DIR/../os/$DISTRO.sh list TOOLCHAIN_BUILD_DEPS)"
|
ENV_SCRIPT="$DIR/../os/$DISTRO.sh"
|
||||||
$DIR/../os/$DISTRO.sh check TOOLCHAIN_BUILD_DEPS
|
if [[ "$for_arm" = true ]]; then
|
||||||
echo "ALL RUN PACKAGES: $($DIR/../os/$DISTRO.sh list TOOLCHAIN_RUN_DEPS)"
|
ENV_SCRIPT="$DIR/../os/$DISTRO-arm.sh"
|
||||||
$DIR/../os/$DISTRO.sh check TOOLCHAIN_RUN_DEPS
|
fi
|
||||||
|
|
||||||
|
# Check for the toolchain build dependencies.
|
||||||
|
echo "ALL BUILD PACKAGES: $(${ENV_SCRIPT} list TOOLCHAIN_BUILD_DEPS)"
|
||||||
|
${ENV_SCRIPT} check TOOLCHAIN_BUILD_DEPS
|
||||||
|
|
||||||
|
# Check for the toolchain run dependencies.
|
||||||
|
echo "ALL RUN PACKAGES: $(${ENV_SCRIPT} list TOOLCHAIN_RUN_DEPS)"
|
||||||
|
${ENV_SCRIPT} check TOOLCHAIN_RUN_DEPS
|
||||||
|
|
||||||
# check installation directory
|
# check installation directory
|
||||||
NAME=toolchain-v$TOOLCHAIN_VERSION
|
NAME=toolchain-v$TOOLCHAIN_VERSION
|
||||||
@@ -379,6 +387,34 @@ if [ ! -f $PREFIX/bin/gdb ]; then
|
|||||||
--without-babeltrace \
|
--without-babeltrace \
|
||||||
--enable-tui \
|
--enable-tui \
|
||||||
--with-python=python3
|
--with-python=python3
|
||||||
|
elif [[ "${DISTRO}" == fedora* ]]; then
|
||||||
|
# Remove readline, gdb does not compile
|
||||||
|
env \
|
||||||
|
CC=gcc \
|
||||||
|
CXX=g++ \
|
||||||
|
CFLAGS="-g -O2 -fstack-protector-strong -Wformat -Werror=format-security" \
|
||||||
|
CXXFLAGS="-g -O2 -fstack-protector-strong -Wformat -Werror=format-security" \
|
||||||
|
CPPFLAGS="-Wdate-time -D_FORTIFY_SOURCE=2 -fPIC" \
|
||||||
|
LDFLAGS="-Wl,-z,relro" \
|
||||||
|
PYTHON="" \
|
||||||
|
../configure \
|
||||||
|
--build=x86_64-linux-gnu \
|
||||||
|
--host=x86_64-linux-gnu \
|
||||||
|
--prefix=$PREFIX \
|
||||||
|
--disable-maintainer-mode \
|
||||||
|
--disable-dependency-tracking \
|
||||||
|
--disable-silent-rules \
|
||||||
|
--disable-gdbtk \
|
||||||
|
--disable-shared \
|
||||||
|
--without-guile \
|
||||||
|
--with-system-gdbinit=$PREFIX/etc/gdb/gdbinit \
|
||||||
|
--with-expat \
|
||||||
|
--with-system-zlib \
|
||||||
|
--with-lzma \
|
||||||
|
--with-babeltrace \
|
||||||
|
--with-intel-pt \
|
||||||
|
--enable-tui \
|
||||||
|
--with-python=python3
|
||||||
else
|
else
|
||||||
# https://buildd.debian.org/status/fetch.php?pkg=gdb&arch=amd64&ver=8.2.1-2&stamp=1550831554&raw=0
|
# https://buildd.debian.org/status/fetch.php?pkg=gdb&arch=amd64&ver=8.2.1-2&stamp=1550831554&raw=0
|
||||||
env \
|
env \
|
||||||
@@ -594,7 +630,7 @@ In order to be able to run all of these tools you should install the following
|
|||||||
packages:
|
packages:
|
||||||
|
|
||||||
\`\`\`
|
\`\`\`
|
||||||
$($DIR/../os/$DISTRO.sh list TOOLCHAIN_RUN_DEPS)
|
$($DIR/../os/$ENV_SCRIPT.sh list TOOLCHAIN_RUN_DEPS)
|
||||||
\`\`\`
|
\`\`\`
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
@@ -651,6 +687,7 @@ export PS1="($NAME) \$PS1"
|
|||||||
export LD_LIBRARY_PATH=$PREFIX/lib:$PREFIX/lib64
|
export LD_LIBRARY_PATH=$PREFIX/lib:$PREFIX/lib64
|
||||||
export CXXFLAGS=-isystem\ $PREFIX/include\ \$CXXFLAGS
|
export CXXFLAGS=-isystem\ $PREFIX/include\ \$CXXFLAGS
|
||||||
export CFLAGS=-isystem\ $PREFIX/include\ \$CFLAGS
|
export CFLAGS=-isystem\ $PREFIX/include\ \$CFLAGS
|
||||||
|
export VENV=$PREFIX
|
||||||
|
|
||||||
# disable root
|
# disable root
|
||||||
function su () {
|
function su () {
|
||||||
@@ -702,7 +739,7 @@ PROXYGEN_SHA256=5360a8ccdfb2f5a6c7b3eed331ec7ab0e2c792d579c6fff499c85c516c11fe14
|
|||||||
SNAPPY_SHA256=75c1fbb3d618dd3a0483bff0e26d0a92b495bbe5059c8b4f1c962b478b6e06e7
|
SNAPPY_SHA256=75c1fbb3d618dd3a0483bff0e26d0a92b495bbe5059c8b4f1c962b478b6e06e7
|
||||||
SNAPPY_VERSION=1.1.9
|
SNAPPY_VERSION=1.1.9
|
||||||
XZ_VERSION=5.2.5 # for LZMA
|
XZ_VERSION=5.2.5 # for LZMA
|
||||||
ZLIB_VERSION=1.2.12
|
ZLIB_VERSION=1.2.13
|
||||||
ZSTD_VERSION=1.5.0
|
ZSTD_VERSION=1.5.0
|
||||||
WANGLE_SHA256=1002e9c32b6f4837f6a760016e3b3e22f3509880ef3eaad191c80dc92655f23f
|
WANGLE_SHA256=1002e9c32b6f4837f6a760016e3b3e22f3509880ef3eaad191c80dc92655f23f
|
||||||
|
|
||||||
@@ -1226,7 +1263,7 @@ popd
|
|||||||
# create toolchain archive
|
# create toolchain archive
|
||||||
if [ ! -f $NAME-binaries-$DISTRO.tar.gz ]; then
|
if [ ! -f $NAME-binaries-$DISTRO.tar.gz ]; then
|
||||||
DISTRO_FULL_NAME=${DISTRO}
|
DISTRO_FULL_NAME=${DISTRO}
|
||||||
if [[ "${DISTRO}" == centos* ]]; then
|
if [[ "${DISTRO}" == centos* ]] || [[ "${DISTRO}" == fedora* ]]; then
|
||||||
if [[ "$for_arm" = "true" ]]; then
|
if [[ "$for_arm" = "true" ]]; then
|
||||||
DISTRO_FULL_NAME="$DISTRO_FULL_NAME-aarch64"
|
DISTRO_FULL_NAME="$DISTRO_FULL_NAME-aarch64"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -19,13 +19,16 @@ function architecture() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
check_architecture() {
|
check_architecture() {
|
||||||
|
local ARCH=$(architecture)
|
||||||
for arch in "$@"; do
|
for arch in "$@"; do
|
||||||
if [ "$(architecture)" = "$arch" ]; then
|
if [ "${ARCH}" = "$arch" ]; then
|
||||||
echo "The right architecture!"
|
echo "The right architecture!"
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
echo "Not the right architecture!"
|
echo "Not the right architecture!"
|
||||||
|
echo "Expected: $@"
|
||||||
|
echo "Actual: ${ARCH}"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
4
init
4
init
@@ -113,8 +113,8 @@ if [[ "$setup_libs" == "true" ]]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Fix for centos 7 during release
|
# Fix for centos 7 during release
|
||||||
if [ "${ARCHITECTURE}" = "centos-7" ]; then
|
if [ "${DISTRO}" = "centos-7" ] || [ "${DISTRO}" = "debian-11" ]; then
|
||||||
python3 -m pip uninstall virtualenv
|
python3 -m pip uninstall -y virtualenv
|
||||||
python3 -m pip install virtualenv
|
python3 -m pip install virtualenv
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -67,7 +67,7 @@ It aims to deliver developers the speed, simplicity and scale required to build
|
|||||||
the next generation of applications driver by real-time connected data.")
|
the next generation of applications driver by real-time connected data.")
|
||||||
# Add `openssl` package to dependencies list. Used to generate SSL certificates.
|
# Add `openssl` package to dependencies list. Used to generate SSL certificates.
|
||||||
# We also depend on `python3` because we embed it in Memgraph.
|
# We also depend on `python3` because we embed it in Memgraph.
|
||||||
set(CPACK_RPM_PACKAGE_REQUIRES "openssl >= 1.0.0, curl >= 7.29.0, python3 >= 3.5.0, libstdc >= 6, logrotate")
|
set(CPACK_RPM_PACKAGE_REQUIRES "openssl >= 1.0.0, curl >= 7.29.0, python3 >= 3.5.0, libstdc++ >= 6, logrotate")
|
||||||
|
|
||||||
# All variables must be set before including.
|
# All variables must be set before including.
|
||||||
include(CPack)
|
include(CPack)
|
||||||
|
|||||||
11
release/package/arm-builders.yml
Normal file
11
release/package/arm-builders.yml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
version: "3"
|
||||||
|
|
||||||
|
services:
|
||||||
|
debian-11-arm:
|
||||||
|
build:
|
||||||
|
context: debian-11-arm
|
||||||
|
container_name: "mgbuild_debian-11-arm"
|
||||||
|
ubuntu-2204-arm:
|
||||||
|
build:
|
||||||
|
context: ubuntu-22.04-arm
|
||||||
|
container_name: "mgbuild_ubuntu-22.04-arm"
|
||||||
@@ -28,3 +28,7 @@ services:
|
|||||||
build:
|
build:
|
||||||
context: ubuntu-22.04
|
context: ubuntu-22.04
|
||||||
container_name: "mgbuild_ubuntu-22.04"
|
container_name: "mgbuild_ubuntu-22.04"
|
||||||
|
mgbuild_fedora-36:
|
||||||
|
build:
|
||||||
|
context: fedora-36
|
||||||
|
container_name: "mgbuild_fedora-36"
|
||||||
|
|||||||
15
release/package/fedora-36/Dockerfile
Normal file
15
release/package/fedora-36/Dockerfile
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
FROM fedora:36
|
||||||
|
|
||||||
|
ARG TOOLCHAIN_VERSION
|
||||||
|
|
||||||
|
# Stops tzdata interactive configuration.
|
||||||
|
RUN yum -y update \
|
||||||
|
&& yum install -y wget git
|
||||||
|
# Do NOT be smart here and clean the cache because the container is used in the
|
||||||
|
# stateful context.
|
||||||
|
|
||||||
|
RUN wget -q https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/${TOOLCHAIN_VERSION}/${TOOLCHAIN_VERSION}-binaries-fedora-36-x86_64.tar.gz \
|
||||||
|
-O ${TOOLCHAIN_VERSION}-binaries-fedora-36-x86_64.tar.gz \
|
||||||
|
&& tar xzvf ${TOOLCHAIN_VERSION}-binaries-fedora-36-x86_64.tar.gz -C /opt
|
||||||
|
|
||||||
|
ENTRYPOINT ["sleep", "infinity"]
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
set -Eeuo pipefail
|
set -Eeuo pipefail
|
||||||
|
|
||||||
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||||
SUPPORTED_OS=(centos-7 centos-9 debian-10 debian-11 ubuntu-18.04 ubuntu-20.04 ubuntu-22.04 debian-11-arm)
|
SUPPORTED_OS=(centos-7 centos-9 debian-10 debian-11 ubuntu-18.04 ubuntu-20.04 ubuntu-22.04 debian-11-arm fedora-36 ubuntu-22.04-arm)
|
||||||
PROJECT_ROOT="$SCRIPT_DIR/../.."
|
PROJECT_ROOT="$SCRIPT_DIR/../.."
|
||||||
TOOLCHAIN_VERSION="toolchain-v4"
|
TOOLCHAIN_VERSION="toolchain-v4"
|
||||||
ACTIVATE_TOOLCHAIN="source /opt/${TOOLCHAIN_VERSION}/activate"
|
ACTIVATE_TOOLCHAIN="source /opt/${TOOLCHAIN_VERSION}/activate"
|
||||||
@@ -23,9 +23,9 @@ make_package () {
|
|||||||
echo "Building Memgraph for $os on $build_container..."
|
echo "Building Memgraph for $os on $build_container..."
|
||||||
|
|
||||||
package_command=""
|
package_command=""
|
||||||
if [[ "$os" =~ ^"centos".* ]]; then
|
if [[ "$os" =~ ^"centos".* ]] || [[ "$os" =~ ^"fedora".* ]]; then
|
||||||
docker exec "$build_container" bash -c "yum -y update"
|
docker exec "$build_container" bash -c "yum -y update"
|
||||||
package_command=" cpack -G RPM --config ../CPackConfig.cmake && rpmlint memgraph*.rpm "
|
package_command=" cpack -G RPM --config ../CPackConfig.cmake && rpmlint --file='../../release/rpm/rpmlintrc' memgraph*.rpm "
|
||||||
fi
|
fi
|
||||||
if [[ "$os" =~ ^"debian".* ]]; then
|
if [[ "$os" =~ ^"debian".* ]]; then
|
||||||
docker exec "$build_container" bash -c "apt update"
|
docker exec "$build_container" bash -c "apt update"
|
||||||
@@ -76,7 +76,7 @@ make_package () {
|
|||||||
docker exec "$build_container" bash -c "cd /memgraph && git config --global --add safe.directory '*'"
|
docker exec "$build_container" bash -c "cd /memgraph && git config --global --add safe.directory '*'"
|
||||||
docker exec "$build_container" bash -c "cd /memgraph && $ACTIVATE_TOOLCHAIN && ./init"
|
docker exec "$build_container" bash -c "cd /memgraph && $ACTIVATE_TOOLCHAIN && ./init"
|
||||||
docker exec "$build_container" bash -c "cd $container_build_dir && rm -rf ./*"
|
docker exec "$build_container" bash -c "cd $container_build_dir && rm -rf ./*"
|
||||||
if [[ "$os" == "debian-11-arm" ]]; then
|
if [[ "$os" =~ "-arm" ]]; then
|
||||||
docker exec "$build_container" bash -c "cd $container_build_dir && $ACTIVATE_TOOLCHAIN && cmake -DCMAKE_BUILD_TYPE=release -DMG_ARCH="ARM64" $telemetry_id_override_flag .."
|
docker exec "$build_container" bash -c "cd $container_build_dir && $ACTIVATE_TOOLCHAIN && cmake -DCMAKE_BUILD_TYPE=release -DMG_ARCH="ARM64" $telemetry_id_override_flag .."
|
||||||
else
|
else
|
||||||
docker exec "$build_container" bash -c "cd $container_build_dir && $ACTIVATE_TOOLCHAIN && cmake -DCMAKE_BUILD_TYPE=release $telemetry_id_override_flag .."
|
docker exec "$build_container" bash -c "cd $container_build_dir && $ACTIVATE_TOOLCHAIN && cmake -DCMAKE_BUILD_TYPE=release $telemetry_id_override_flag .."
|
||||||
|
|||||||
17
release/package/ubuntu-22.04-arm/Dockerfile
Normal file
17
release/package/ubuntu-22.04-arm/Dockerfile
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
FROM ubuntu:22.04
|
||||||
|
|
||||||
|
ARG TOOLCHAIN_VERSION
|
||||||
|
|
||||||
|
# Stops tzdata interactive configuration.
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
RUN apt update && apt install -y \
|
||||||
|
ca-certificates wget git
|
||||||
|
# Do NOT be smart here and clean the cache because the container is used in the
|
||||||
|
# stateful context.
|
||||||
|
|
||||||
|
RUN wget -q https://s3-eu-west-1.amazonaws.com/deps.memgraph.io/${TOOLCHAIN_VERSION}/${TOOLCHAIN_VERSION}-binaries-ubuntu-22.04-arm64.tar.gz \
|
||||||
|
-O ${TOOLCHAIN_VERSION}-binaries-ubuntu-22.04-arm64.tar.gz \
|
||||||
|
&& tar xzvf ${TOOLCHAIN_VERSION}-binaries-ubuntu-22.04-arm64.tar.gz -C /opt
|
||||||
|
|
||||||
|
ENTRYPOINT ["sleep", "infinity"]
|
||||||
@@ -30,7 +30,7 @@ BuildRequires: systemd
|
|||||||
# This is needed to prevent Python compilation errors when building the RPM
|
# This is needed to prevent Python compilation errors when building the RPM
|
||||||
# package
|
# package
|
||||||
# https://github.com/scylladb/scylla/issues/2235
|
# https://github.com/scylladb/scylla/issues/2235
|
||||||
%if 0%{?rhel} < 8
|
%if 0%{?rhel} && 0%{?rhel} < 8
|
||||||
%global __os_install_post \
|
%global __os_install_post \
|
||||||
/usr/lib/rpm/redhat/brp-compress \
|
/usr/lib/rpm/redhat/brp-compress \
|
||||||
%{!?__debug_package:\
|
%{!?__debug_package:\
|
||||||
@@ -40,7 +40,9 @@ BuildRequires: systemd
|
|||||||
/usr/lib/rpm/redhat/brp-strip-static-archive %{__strip} \
|
/usr/lib/rpm/redhat/brp-strip-static-archive %{__strip} \
|
||||||
%{!?__jar_repack:/usr/lib/rpm/redhat/brp-java-repack-jars} \
|
%{!?__jar_repack:/usr/lib/rpm/redhat/brp-java-repack-jars} \
|
||||||
%{nil}
|
%{nil}
|
||||||
%else
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?fedora} && 0%{?fedora} < 35
|
||||||
%global __os_install_post \
|
%global __os_install_post \
|
||||||
/usr/lib/rpm/brp-compress \
|
/usr/lib/rpm/brp-compress \
|
||||||
%{!?__debug_package:\
|
%{!?__debug_package:\
|
||||||
|
|||||||
4
release/rpm/rpmlintrc
Normal file
4
release/rpm/rpmlintrc
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
# from https://github.com/google/earthenterprise/blob/master/earth_enterprise/rpmlintrc
|
||||||
|
|
||||||
|
# We are not packaging log dir
|
||||||
|
addFilter("E: logrotate-log-dir-not-packaged")
|
||||||
Reference in New Issue
Block a user