This is an automated email from the ASF dual-hosted git repository.
vveider pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git
The following commit(s) were added to refs/heads/main by this push:
new c2b8000 IGNITE-15819 Prepare DEB package for Ignite 3.0 (#413)
c2b8000 is described below
commit c2b800084375c38e89263228cbe82153bb7bb083
Author: Peter Ivanov <[email protected]>
AuthorDate: Tue Oct 26 15:43:46 2021 +0300
IGNITE-15819 Prepare DEB package for Ignite 3.0 (#413)
---
deliveries/{rpm => deb}/build.sh | 23 +++++++++--------------
deliveries/deb/changelog | 5 +++++
deliveries/deb/control | 14 ++++++++++++++
deliveries/deb/copyright | 11 +++++++++++
deliveries/deb/rules | 36 ++++++++++++++++++++++++++++++++++++
deliveries/rpm/apache-ignite.spec | 9 ++++-----
deliveries/rpm/build.sh | 4 ++--
parent/pom.xml | 3 +++
8 files changed, 84 insertions(+), 21 deletions(-)
diff --git a/deliveries/rpm/build.sh b/deliveries/deb/build.sh
similarity index 59%
copy from deliveries/rpm/build.sh
copy to deliveries/deb/build.sh
index e51b568..98a3eeb 100644
--- a/deliveries/rpm/build.sh
+++ b/deliveries/deb/build.sh
@@ -19,20 +19,15 @@ set -o nounset; set -o errexit; set -o pipefail; set -o
errtrace; set -o functra
## VARS ##
-PACKAGE_VERSION="${1}"
-
-RPM_WORK_DIR="/tmp/apache-ignite-rpm"
-
+SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd
)"
+PATH__RPM="${1}"
+FILE__RPM=$(basename "${PATH__RPM}")
## START ##
-mkdir -pv ${RPM_WORK_DIR}/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
-cp -rfv ignite ${RPM_WORK_DIR}/BUILD/
-cp -rfv apache-ignite.spec ${RPM_WORK_DIR}/SPECS/
-sed -r "4 i if [ \"\$(whoami)\" != \"ignite\" ]; then echo \"Ignite CLI can
only be run by 'ignite' user.\"; echo \"Swith user to ignite by executing
'(sudo) su ignite'\"; exit 1; fi" \
- -i ${RPM_WORK_DIR}/BUILD/ignite
-rpmbuild -bb \
- --define "_topdir ${RPM_WORK_DIR}" \
- ${RPM_WORK_DIR}/SPECS/apache-ignite.spec
-cp -rfv
${RPM_WORK_DIR}/RPMS/noarch/apache-ignite-${PACKAGE_VERSION}.noarch.rpm ./
-
+cd "${SCRIPT_DIR}"
+mv -fv "${PATH__RPM}" ./
+alien --scripts --verbose --keep-version --single "${FILE__RPM}"
+rm -rf "${FILE__RPM}"
+cd apache-ignite-*
+fakeroot debian/rules binary
diff --git a/deliveries/deb/changelog b/deliveries/deb/changelog
new file mode 100644
index 0000000..ede72c0
--- /dev/null
+++ b/deliveries/deb/changelog
@@ -0,0 +1,5 @@
+apache-ignite (3.0.0-1) unstable; urgency=low
+
+ * Apache Ignite 3 initial release
+
+ -- Petr Ivanov <[email protected]> Mon, 25 Oct 2021 17:19:00 +0300
diff --git a/deliveries/deb/control b/deliveries/deb/control
new file mode 100644
index 0000000..35b3473
--- /dev/null
+++ b/deliveries/deb/control
@@ -0,0 +1,14 @@
+Source: apache-ignite
+Maintainer: Petr Ivanov <[email protected]>
+Section: misc
+Priority: optional
+Standards-Version: 4.1.1.1
+
+Package: apache-ignite
+Architecture: all
+Section: misc
+Priority: optional
+Depends: openjdk-11-jdk | default-jdk | java-sdk, passwd
+Description: Apache Ignite is a distributed database for high-performance
+ computing with in-memory speed.
+Homepage: https://ignite.apache.org
diff --git a/deliveries/deb/copyright b/deliveries/deb/copyright
new file mode 100644
index 0000000..51fca54
--- /dev/null
+++ b/deliveries/deb/copyright
@@ -0,0 +1,11 @@
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
diff --git a/deliveries/deb/rules b/deliveries/deb/rules
new file mode 100644
index 0000000..53ba30e
--- /dev/null
+++ b/deliveries/deb/rules
@@ -0,0 +1,36 @@
+#!/usr/bin/make -f
+# debian/rules for alien
+
+PACKAGE=$(shell dh_listpackages)
+
+clean:
+ dh_testdir
+ dh_testroot
+ dh_clean -d
+
+binary-arch: clean
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+
+ dh_installdocs
+ dh_installchangelogs
+
+ # Copy the packages's files.
+ find . -maxdepth 1 -mindepth 1 -not -name debian -print0 | \
+ xargs -0 -r -i cp -a {} debian/$(PACKAGE)
+
+ #
+ # If you need to move files around in debian/$(PACKAGE) or do some
+ # binary patching, do it here
+ #
+
+ dh_compress
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-arch
diff --git a/deliveries/rpm/apache-ignite.spec
b/deliveries/rpm/apache-ignite.spec
index 6b293ac..3574569 100644
--- a/deliveries/rpm/apache-ignite.spec
+++ b/deliveries/rpm/apache-ignite.spec
@@ -53,11 +53,9 @@ Apache Ignite is a distributed database for high-performance
computing with in-m
#
echo "Preinstall mode: '$1'"
case $1 in
- 1|configure)
+ 1|install)
# Add service user
- /usr/sbin/useradd -r -M -d %{_datadir}/%{name} -s /bin/bash %{user}
- #useradd -r -md %{_datadir}/%{name} %{user}
- #[ -f "%{_datadir}/%{name}/.bashrc" ] && echo "cd ~" >>
%{_datadir}/%{name}/.bashrc
+ /usr/sbin/useradd -r -M -d /usr/share/apache-ignite -s /bin/bash ignite
;;
esac
@@ -159,7 +157,8 @@ case $1 in
userdel %{user}
# Remove service PID directory
- rm -rfv /var/run/%{name}
+ rm -rfv /var/run/%{name} \
+ /usr/share/${name}
# Remove firewalld rules if firewalld is installed and running
if [[ "$(type firewall-cmd &>/dev/null; echo $?)" -eq 0 &&
"$(systemctl is-active firewalld)" == "active" ]]
diff --git a/deliveries/rpm/build.sh b/deliveries/rpm/build.sh
index e51b568..eb798e7 100644
--- a/deliveries/rpm/build.sh
+++ b/deliveries/rpm/build.sh
@@ -20,12 +20,12 @@ set -o nounset; set -o errexit; set -o pipefail; set -o
errtrace; set -o functra
## VARS ##
PACKAGE_VERSION="${1}"
-
RPM_WORK_DIR="/tmp/apache-ignite-rpm"
-
+SCRIPT_DIR="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd
)"
## START ##
+cd ${SCRIPT_DIR}
mkdir -pv ${RPM_WORK_DIR}/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
cp -rfv ignite ${RPM_WORK_DIR}/BUILD/
cp -rfv apache-ignite.spec ${RPM_WORK_DIR}/SPECS/
diff --git a/parent/pom.xml b/parent/pom.xml
index ef02b7a..93969d0 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -1147,6 +1147,9 @@
<exclude>modules/raft/src/main/java/org/apache/ignite/raft/jraft/util/timer/TimerTask.java</exclude>
<!-- Netty license. -->
<exclude>modules/raft/src/main/java/org/apache/ignite/raft/jraft/util/timer/Timeout.java</exclude>
<!-- Netty license. -->
<exclude>**/*.sln</exclude> <!-- Visual Studio
solution. -->
+ <!-- DEB package assembly files -->
+ <exclude>deliveries/deb/rules</exclude>
+ <exclude>deliveries/deb/control</exclude>
</excludes>
</configuration>
</plugin>