Compare commits

...

8 commits

12 changed files with 210 additions and 0 deletions

3
.gitmodules vendored
View file

@ -514,3 +514,6 @@
[submodule "drone-runner-ssh"]
path = drone-runner-ssh
url = ssh://aur@aur.archlinux.org/drone-runner-ssh.git
[submodule "drone-runner-exec"]
path = drone-runner-exec
url = ssh://aur@aur.archlinux.org/drone-runner-exec.git

View file

@ -78,6 +78,24 @@ use_max_tag = true
prefix = "v"
exclude_regex = "^.*(rc).*$"
[drone]
source = "github"
github = "drone/drone"
use_max_tag = true
prefix = "v"
[drone-runner-exec]
source = "github"
github = "drone-runners/drone-runner-exec"
use_max_tag = true
prefix = "v"
[drone-runner-docker]
source = "github"
github = "drone-runners/drone-runner-docker"
use_max_tag = true
prefix = "v"
[drone-runner-ssh]
source = "github"
github = "drone-runners/drone-runner-ssh"

View file

@ -0,0 +1,73 @@
# 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'
'94775ce502d40ed2af17103bc9d3fcffd10df6618654473cca618752ea175eea8258c5b308fab89b88116cdf6a62ed6b18498d5c75119fa30c8ec36d9f043418'
'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
}

View file

@ -0,0 +1,14 @@
[Unit]
Description=Drone Runner (Docker)
After=network.target
[Service]
User=drone-runner-docker
Group=drone-runner-docker
Type=simple
WorkingDirectory=/var/lib/drone-runner-docker
ReadWritePaths=/var/lib/drone-runner-docker
ExecStart=/usr/bin/drone-runner-docker
[Install]
WantedBy=multi-user.target

View file

@ -0,0 +1 @@
u drone-runner-docker - "Drone Runner Docker user"

View file

@ -0,0 +1 @@
d /var/lib/drone-runner-docker 0750 drone-runner-docker drone-runner-docker

1
drone-runner-exec Submodule

@ -0,0 +1 @@
Subproject commit 133ada7b9f0b8f23e1c28f115b0b111711809d63

14
drone/.SRCINFO Normal file
View file

@ -0,0 +1,14 @@
pkgbase = drone
pkgdesc = Drone is a Continuous Delivery platform built on Docker, written in Go - OSS variant
pkgver = 2.0.3
pkgrel = 1
url = https://drone.io
arch = x86_64
license = Apache
makedepends = go
makedepends = git
source = drone-2.0.3.tar.gz::https://github.com/drone/drone/archive/v2.0.3.tar.gz
sha256sums = 354b60a8616dfa17ebe3f82026f0865619e55f0725a60d850ce81c50733debcb
pkgname = drone

68
drone/PKGBUILD Normal file
View file

@ -0,0 +1,68 @@
# Maintainer: George Rawlinson <grawlinson@archlinux.org>
# Contributor: Khorne <khorne AT khorne DOT me>
pkgname=drone
pkgver=2.1.0
pkgrel=1
pkgdesc="Continuous Delivery platform built on container technology (OSS version)"
arch=('x86_64')
url="https://drone.io"
license=('Apache')
makedepends=('go' 'git')
source=(
"$pkgname-$pkgver.tar.gz::https://github.com/drone/drone/archive/v$pkgver.tar.gz"
'systemd.service'
'tmpfiles.conf'
'sysusers.conf'
)
b2sums=('13615a2d04f76ef6359b1b6b8db049f54c8d87905c595de148f4e2e05936eb1e5d7d4f6ee5ffcbd9a08bf218fa74d8ac629060d23b4079cc33f750444528a71c'
'b26d11b697d496378a0cf0d6592309dab5a6af58e0776bc2a168eb3c478cb97134ce3db7ab858d5bf6d89a9e465cc865463963a0693270296f3e81707dbbd6f0'
'9c1bf8e4a382190f2d1bd560ef5c4a9fadad8c38dcd3cf3b79af42f6d0c16de533ba2d5f6cf676003e4ca6b745833e5e100baf4328111cf540ac5f43f67c6145'
'65912606d44a45cdcfb449c766313384529b48f30b8f3fa0a79da9cb179639c65af76adcf10005213a2563e90f91eab4f7f5b3250656d2949991ccad58e912f5')
prepare() {
cd "$pkgname-$pkgver"
# create directory for build output
mkdir 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=vendor \
-modcacherw \
-ldflags "-linkmode external -extldflags \"${LDFLAGS}\"" \
-tags "oss nolimit" \
-o build ./cmd/...
}
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/*
# documentation
install -vDm644 -t "$pkgdir/usr/share/doc/$pkgname" .github/readme.md *.md
# license
install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" LICENSE NOTICE
}

15
drone/systemd.service Normal file
View file

@ -0,0 +1,15 @@
[Unit]
Description=Drone
After=syslog.target network.target
[Service]
Type=simple
ExecStart=/usr/bin/drone-server
RestartSec=2
Restart=on-failure
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=drone-server
[Install]
WantedBy=multi-user.target

1
drone/sysusers.conf Normal file
View file

@ -0,0 +1 @@
u drone "Drone system user" /var/lib/drone

1
drone/tmpfiles.conf Normal file
View file

@ -0,0 +1 @@
d /var/lib/drone 0755 drone drone