summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorIdo Rosen2013-11-18 21:54:53 -0500
committerIdo Rosen2013-11-18 21:54:53 -0500
commit8b74ea8c5a2caaf9fb087a9457d10a03e240828f (patch)
tree41b16fafb00dac0045475f194cf6bf4930b8138c
parent42d492832ad97ca1cc50108c27b099fba52f8fe3 (diff)
downloadaur-8b74ea8c5a2caaf9fb087a9457d10a03e240828f.tar.gz
Added ceph-git
-rw-r--r--.SRCINFO33
-rw-r--r--PKGBUILD124
-rw-r--r--ceph-mds@.service14
-rw-r--r--ceph-mon@.service14
-rw-r--r--ceph-osd@.service14
-rw-r--r--ceph.install9
6 files changed, 159 insertions, 49 deletions
diff --git a/.SRCINFO b/.SRCINFO
index ee5642b65ee1..7a619b0c8737 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,28 +1,45 @@
pkgbase = ceph-git
- pkgdesc = Massively distributed fault-tolerant file system. Git development version.
- pkgver = 20110528
+ pkgdesc = Distributed, fault-tolerant file system delivering object, block, and file storage in one unified system.
+ pkgver = 0.72.255.g574cb61
pkgrel = 1
+ epoch = 1
url = http://ceph.newdream.net/
+ install = ceph.install
arch = x86_64
arch = i686
- license = GPL
+ license = LGPL2.1
makedepends = boost
+ makedepends = boost-libs
depends = libedit
depends = libsigc++
depends = gtkmm
- depends = btrfs-progs-unstable
+ depends = btrfs-progs
depends = crypto++
- depends = gperftools
+ depends = gperftools>=1.8.3-2
depends = python2
depends = fuse
depends = keyutils
depends = libatomic_ops
- depends = linux>=2.6.37
+ depends = curl
+ depends = libaio
+ depends = fcgi
+ depends = expat
+ depends = boost
depends = leveldb
- optdepends = fcgi: radosgw - Amazon S3 compatibility
- optdepends = expat: radosgw - Amazon S3 compatibility
provides = ceph
conflicts = ceph
+ options = !libtool
+ options = emptydirs
+ source = git+https://github.com/ceph/ceph.git
+ source = ceph-osd@.service
+ source = ceph-mon@.service
+ source = ceph-mds@.service
+ source = ceph.install
+ sha256sums = SKIP
+ sha256sums = 29483c0f6718e8830cf52c0d31e391fb52dc1b460bcb65cf9c72dfab83e5b5ce
+ sha256sums = a50811ce62fd6cdcc17d8f1e4d9700c1889ab4bfc5e9a22155bd725a27715e3c
+ sha256sums = b8239a04cc42e3e4ced2e141df6804e61e875131a5c95d6bcbfc3b44f388d44b
+ sha256sums = c1669b2bedc07a313b8bd29735296791abc0fd94eb353c9683b6015f2cc2c93c
pkgname = ceph-git
diff --git a/PKGBUILD b/PKGBUILD
index 50305c40a436..c65a428c0de4 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,61 +1,103 @@
-# Maintainer: Alexander Rødseth <rodseth@gmail.com>
+# $Id$
+# Maintainer: Ido Rosen <ido@kernel.org>
+# Contributor: Evan Teitelman <teitelmanevan@gmail.com>
+# Contributor: Eric Renfro <erenfro@gmail.com>
+# Contributor: Alexander Rødseth <rodseth@gmail.com>
+# Contributor: Marti Raudsepp <marti@juffo.org>
+# Contributor: Sandman <the0sandman@hotmail.com>
+# Contributor: raw <spam@rw23.de>
+# Contributor: Dave Simons <miouhpi@gmail.com>
+#
+# NOTE: To request changes to this package, please submit a pull request
+# to the GitHub repository at https://github.com/ido/packages-archlinux
+# Otherwise, open a GitHub issue. Thank you! -Ido
+#
+
pkgname=ceph-git
-pkgver=20110528
+pkgver=0.72.255.g574cb61
pkgrel=1
-pkgdesc="Massively distributed fault-tolerant file system. Git development version."
+epoch=1
+pkgdesc='Distributed, fault-tolerant file system delivering object, block, and file storage in one unified system.'
arch=('x86_64' 'i686')
-url="http://ceph.newdream.net/"
-license=('GPL')
-depends=('libedit' 'libsigc++' 'gtkmm' 'btrfs-progs-unstable' 'crypto++' 'gperftools' 'python2' 'fuse' 'keyutils' 'libatomic_ops' 'linux>=2.6.37' 'leveldb')
-makedepends=('boost')
-optdepends=('fcgi: radosgw - Amazon S3 compatibility'
- 'expat: radosgw - Amazon S3 compatibility')
+url='http://ceph.newdream.net/'
+license=('LGPL2.1')
+depends=('libedit' 'libsigc++' 'gtkmm' 'btrfs-progs' 'crypto++'
+ 'gperftools>=1.8.3-2' 'python2' 'fuse' 'keyutils'
+ 'libatomic_ops' 'curl' 'libaio' 'fcgi' 'expat' 'boost'
+ 'leveldb')
+makedepends=('boost' 'boost-libs')
+install=ceph.install
+options=('!libtool' 'emptydirs')
provides=('ceph')
conflicts=('ceph')
-_gitroot="git://ceph.newdream.net/git/ceph.git"
-_gitname="ceph"
+source=("git+https://github.com/ceph/ceph.git"
+ "ceph-osd@.service"
+ "ceph-mon@.service"
+ "ceph-mds@.service"
+ "ceph.install")
+sha256sums=('SKIP'
+ '29483c0f6718e8830cf52c0d31e391fb52dc1b460bcb65cf9c72dfab83e5b5ce'
+ 'a50811ce62fd6cdcc17d8f1e4d9700c1889ab4bfc5e9a22155bd725a27715e3c'
+ 'b8239a04cc42e3e4ced2e141df6804e61e875131a5c95d6bcbfc3b44f388d44b'
+ 'c1669b2bedc07a313b8bd29735296791abc0fd94eb353c9683b6015f2cc2c93c')
+
+pkgver() {
+ cd "${srcdir}/${pkgname%%-git}"
+ #printf "%s" "$(git describe --long --tags | sed 's/v//; s/-/./g')"
+ git describe --long --tags | sed 's/v//; s/-/./g'
+}
+
+prepare() {
+ cd "${srcdir}/${pkgname%%-git}"
+ # Fix for newer version of automake.
+ #find . -name 'Makefile.am' | while read makefile ; do
+ # if grep -q AUTOMAKE_OPTIONS "$makefile" ; then
+ # sed -i 's/AUTOMAKE_OPTIONS = /&subdir-objects /' "$makefile"
+ # else
+ # sed -i '1a\AUTOMAKE_OPTIONS = subdir-objects' "$makefile"
+ # fi
+ #done
+}
build() {
- cd "$srcdir"
-
- msg "Connecting to the ceph git repository..."
- if [ -d "$srcdir/$_gitname" ] ; then
- cd $_gitname && git pull origin
- msg "The local files are updated."
- else
- git clone $_gitroot
- fi
- msg "GIT checkout done or server timeout"
-
- cd "$srcdir"
- rm -rf "$_gitname-build"
- git clone "$_gitname" "$_gitname-build"
- cd "$_gitname-build"
-
- msg2 "Configuring..."
+ cd "${srcdir}/${pkgname%%-git}"
+
./autogen.sh
- ./configure --prefix=/usr --sysconfdir=/etc
- make clean
- msg2 "Compiling..."
+ LIBS="-lpthread -lboost_system" ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --with-radosgw
+
make
- msg2 "Patching python scripts..."
- sed -i 's:thon:thon2:' src/obsync/boto_tool
- sed -i 's:thon:thon2:' src/obsync/obsync
}
package() {
- cd "$_gitname-build"
- msg2 "Packaging..."
+ cd "${srcdir}/${pkgname%%-git}"
+
make DESTDIR="$pkgdir" install
- mkdir -p "$pkgdir/var/run/ceph" "$pkgdir/var/log/ceph" \
+
+ install -dm755 "$pkgdir/var/run/ceph" "$pkgdir/var/log/ceph" \
"$pkgdir/etc/rc.d" "$pkgdir/etc/ceph"
+
+ # Systemd.
+ install -dm755 "$pkgdir/usr/lib/systemd/system"
+ install -Dm644 "$srcdir/ceph-osd@.service" "$pkgdir/usr/lib/systemd/system/ceph-osd@.service"
+ install -Dm644 "$srcdir/ceph-mon@.service" "$pkgdir/usr/lib/systemd/system/ceph-mon@.service"
+ install -Dm644 "$srcdir/ceph-mds@.service" "$pkgdir/usr/lib/systemd/system/ceph-mds@.service"
install -Dm755 "src/init-ceph" "$pkgdir/etc/rc.d/ceph"
- # Move /usr/sbin to /sbin, which is expected by the mount command
- mv "$pkgdir/usr/sbin" "$pkgdir/"
+
+ # Fix bin directory.
+ mv "$pkgdir/usr/sbin" "$pkgdir/usr/bin"
+
+ # Sample config.
install -Dm644 "$pkgdir/usr/share/doc/ceph/sample.ceph.conf" \
"$pkgdir/etc/ceph/ceph.conf.sample"
+
+ # License.
install -Dm644 COPYING \
- "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+ "$pkgdir/usr/share/licenses/${pkgname}/COPYING"
+
+ # Clean up.
+ rmdir "$pkgdir/var/run/ceph"
}
-# vim:set ts=2 sw=2 et:
diff --git a/ceph-mds@.service b/ceph-mds@.service
new file mode 100644
index 000000000000..3696d0f7b038
--- /dev/null
+++ b/ceph-mds@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=CephFS MDS %i
+Requires=network.target
+After=network.target
+
+[Service]
+Type=simple
+Restart=always
+RestartSec=2s
+ExecStart=/usr/bin/ceph-mds -f -i %i
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/ceph-mon@.service b/ceph-mon@.service
new file mode 100644
index 000000000000..cfce078ac421
--- /dev/null
+++ b/ceph-mon@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=CephFS MON %i
+Requires=network.target
+After=network.target
+
+[Service]
+Type=simple
+Restart=always
+RestartSec=2s
+ExecStart=/usr/bin/ceph-mon -f -i %i
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/ceph-osd@.service b/ceph-osd@.service
new file mode 100644
index 000000000000..d0d8cc726e99
--- /dev/null
+++ b/ceph-osd@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=CephFS OSD %i
+Requires=network.target
+After=network.target
+
+[Service]
+Type=simple
+Restart=always
+RestartSec=2s
+ExecStart=/usr/bin/ceph-osd -f -i %i
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/ceph.install b/ceph.install
new file mode 100644
index 000000000000..86ef79080ec0
--- /dev/null
+++ b/ceph.install
@@ -0,0 +1,9 @@
+post_install() {
+ mkdir /var/run/ceph
+}
+
+pre_remove() {
+ rmdir --ignore-fail-on-non-empty /var/run/ceph
+}
+
+# vim:set ts=2 sw=2 et: