summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authormtunique2017-03-22 13:46:13 +0000
committermtunique2017-03-22 13:46:39 +0000
commit0a1eb196782c8555730d809c7382d0ed173f02eb (patch)
tree4a15951d39d61569f3b3e60cff17276472c06da5
downloadaur-0a1eb196782c8555730d809c7382d0ed173f02eb.tar.gz
init apache flink aur package
-rw-r--r--.SRCINFO32
-rw-r--r--PKGBUILD60
-rw-r--r--apache-flink-jobmanager.service12
-rw-r--r--apache-flink-taskmanager@.service12
-rw-r--r--apache-flink.install22
5 files changed, 138 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..6fccdea51c8a
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,32 @@
+pkgbase = apache-flink
+ pkgdesc = Apache Flink is an open source platform for distributed stream and batch data processing
+ pkgver = 1.2.0
+ pkgrel = 1
+ url = http://flink.apache.org
+ install = apache-flink.install
+ arch = i686
+ arch = x86_64
+ license = APACHE
+ depends = java-environment>=7
+ depends = openssh
+ optdepends = python2: python2 support for python API
+ optdepends = python: python3 support for python API
+ optdepends = hadoop: support for running on YARN
+ backup = etc/apache-flink/flink-conf.yaml
+ backup = etc/apache-flink/log4j-cli.properties
+ backup = etc/apache-flink/log4j-yarn-session.properties
+ backup = etc/apache-flink/log4j.properties
+ backup = etc/apache-flink/logback-yarn.xml
+ backup = etc/apache-flink/logback.xml
+ backup = etc/apache-flink/masters
+ backup = etc/apache-flink/slaves
+ backup = etc/apache-flink/zoo.cfg
+ source = http://www-us.apache.org/dist/flink/flink-1.2.0/flink-1.2.0-bin-hadoop2-scala_2.10.tgz
+ source = apache-flink-jobmanager.service
+ source = apache-flink-taskmanager@.service
+ md5sums = 792225bf4256b8ae2b2d9582a505c41c
+ md5sums = ee79b5786f48bd30b6e2f717e42abe5a
+ md5sums = b5da15654a4bfaa1806cd9befb1cb0e4
+
+pkgname = apache-flink
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..e40f98ee8270
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,60 @@
+# Maintainer: Tao Meng ("mtunique") <oatgnem [at] gmail.com>
+
+pkgname=apache-flink
+pkgver=1.2.0
+pkgrel=1
+pkgdesc="Apache Flink is an open source platform for distributed stream and batch data processing"
+arch=("i686" "x86_64")
+url="http://flink.apache.org"
+license=("APACHE")
+depends=('java-environment>=7' 'openssh')
+optdepends=("python2: python2 support for python API"
+ "python: python3 support for python API"
+ "hadoop: support for running on YARN")
+install=apache-flink.install
+source=("http://www-us.apache.org/dist/flink/flink-1.2.0/flink-${pkgver}-bin-hadoop2-scala_2.10.tgz"
+ "apache-flink-jobmanager.service"
+ "apache-flink-taskmanager@.service")
+md5sums=("792225bf4256b8ae2b2d9582a505c41c"
+ "ee79b5786f48bd30b6e2f717e42abe5a"
+ "b5da15654a4bfaa1806cd9befb1cb0e4")
+backup=(
+ "etc/${pkgname}/flink-conf.yaml"
+ "etc/${pkgname}/log4j-cli.properties"
+ "etc/${pkgname}/log4j-yarn-session.properties"
+ "etc/${pkgname}/log4j.properties"
+ "etc/${pkgname}/logback-yarn.xml"
+ "etc/${pkgname}/logback.xml"
+ "etc/${pkgname}/masters"
+ "etc/${pkgname}/slaves"
+ "etc/${pkgname}/zoo.cfg"
+)
+
+PKGEXT=${PKGEXT:-".pkg.tar.xz"}
+
+prepare() {
+ cd "$srcdir/flink-${pkgver}"
+}
+
+package() {
+ cd "$srcdir/flink-${pkgver}"
+
+ install -d "$pkgdir/usr/bin" "$pkgdir/opt" "$pkgdir/var/log/apache-flink"
+
+ cp -r "$srcdir/flink-${pkgver}" "$pkgdir/opt/apache-flink/"
+
+ cd "$pkgdir/usr/bin"
+ binpath="/opt/apache-flink/bin/flink"
+ ln -s "$binpath" $binary
+
+ install -Dm644 "$srcdir/apache-flink-jobmanager.service" "$pkgdir/usr/lib/systemd/system/apache-flink-jobmanager.service"
+ install -Dm644 "$srcdir/apache-flink-taskmanager@.service" "$pkgdir/usr/lib/systemd/system/apache-flink-taskmanager@.service"
+
+
+ mkdir -p "$pkgdir/etc/apache-flink"
+ install -Dm644 "$srcdir/flink-${pkgver}/conf"/* "$pkgdir/etc/apache-flink"
+
+ cd "$pkgdir/opt/apache-flink"
+ mv conf conf-templates
+ ln -sf "/etc/apache-flink" conf
+}
diff --git a/apache-flink-jobmanager.service b/apache-flink-jobmanager.service
new file mode 100644
index 000000000000..f59cf039d92a
--- /dev/null
+++ b/apache-flink-jobmanager.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Apache Flink Standalone JobManager
+After=network.target
+
+[Service]
+User=apache-flink
+Group=apache-flink
+Environment=FLINK_LOG_DIR=/var/log/apache-flink
+ExecStart=/opt/apache-flink/bin/jobmanager.sh start
+
+[Install]
+WantedBy=multi-user.target
diff --git a/apache-flink-taskmanager@.service b/apache-flink-taskmanager@.service
new file mode 100644
index 000000000000..22273b65d329
--- /dev/null
+++ b/apache-flink-taskmanager@.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Apache Flink Standalone TaskManager
+After=network.target
+
+[Service]
+User=apache-flink
+Group=apache-flink
+Environment=FLINK_LOG_DIR=/var/log/apache-flink
+ExecStart=/opt/apache-flink/bin/taskmanager.sh start
+
+[Install]
+WantedBy=multi-user.target
diff --git a/apache-flink.install b/apache-flink.install
new file mode 100644
index 000000000000..ef93c69e9792
--- /dev/null
+++ b/apache-flink.install
@@ -0,0 +1,22 @@
+post_install() {
+ getent group 'apache-flink' >/dev/null 2>&1 || groupadd -r -f 'apache-flink' >/dev/null
+ getent passwd 'apache-flink' /dev/null 2>&1 || useradd -r -g 'apache-flink' -d '/etc/apache-flink' 'apache-flink' >/dev/null
+
+ chown -R apache-flink:apache-flink /var/log/apache-flink
+ chown -R apache-flink:apache-flink /etc/apache-flink
+
+ if [ ! -e '/etc/apache-flink/.ssh/id_rsa' ] ; then
+ su -s '/usr/bin/bash' -c "ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa" - 'apache-flink'
+ su -s '/usr/bin/bash' -c "cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys" - 'apache-flink'
+ fi
+
+}
+
+post_remove() {
+ getent passwd apache-flink >/dev/null 2>&1 || userdel -f apache-flink
+
+ getent group apache-flink >/dev/null 2>&1 || groupdelf apache-flink
+
+ # /usr/sbin/userdel apache-flink
+ # /usr/sbin/groupdel apache-flink
+}