# Maintainer: George Rawlinson pkgname=drone-runner-docker pkgver=1.6.3 pkgrel=1 pkgdesc="Drone pipeline runner that executes builds inside Docker containers" arch=('x86_64') url="https://github.com/drone-runners/drone-runner-docker" license=('custom:Polyform-Small-Business-1.0.0' 'custom:Polyform-Free-Trial-1.0.0') depends=('docker') makedepends=('go' 'git') optdepends=('drone: for a local Drone instance') source=( "$pkgname-$pkgver.tar.gz::$url/archive/v$pkgver.tar.gz" 'systemd.service' 'sysusers.conf' 'tmpfiles.conf' ) b2sums=('0bea0ca1cfb28f543437c73e3f6e60e100ed1c2a947c56ee59256f14696983d0340a5c08c3a2539c5acff2da9d0a568c6a04914bb763dd08b8dec0f3d006386f' 'a76e0c190fcecbd99be68e9ead11c6cda27cf30045c9585356032982d1ecf053f2e8ed5b2a640403bd6a214eccfa50ec425bf34a284966a315a6754272133e99' '327ef1f6158fc970d37b41d40e3b2f2c937f701ac4d7dda846b48ddf517d3f0e39ce360ae13aef8539587e71f861593941da3be32df032f6d65deb7927c8da9b' '02b6ca4f1bdbaf968c81a2aab25efdb76d53590baadfa4c239239bc2b39bf09f8266775fc8addcf3a51fa48bd0a1ecfdb34c674b7355fbe5476cd53ae1780504') prepare() { cd "$pkgname-$pkgver" # create directory for build output mkdir -p build # download dependencies go mod vendor } build() { cd "$pkgname-$pkgver" # set Go flags export CGO_CPPFLAGS="${CPPFLAGS}" export CGO_CFLAGS="${CFLAGS}" export CGO_CXXFLAGS="${CXXFLAGS}" go build -v \ -trimpath \ -buildmode=pie \ -mod=readonly \ -modcacherw \ -ldflags "-linkmode external -extldflags \"${LDFLAGS}\"" \ -o build \ . } check() { cd "$pkgname-$pkgver" go test -v ./... } package() { # systemd integration install -vDm644 systemd.service "$pkgdir/usr/lib/systemd/system/$pkgname.service" install -vDm644 sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgname.conf" install -vDm644 tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/$pkgname.conf" cd "$pkgname-$pkgver" # binary install -vDm755 -t "$pkgdir/usr/bin" build/* # licenses install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" licenses/* LICENSE.md # documentation install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" README.md CHANGELOG.md }