arch-pkgs/drone-runner-docker/PKGBUILD

74 lines
2.1 KiB
Bash

# Maintainer: George Rawlinson <grawlinson@archlinux.org>
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
}