aports/community/minio/APKBUILD

79 lines
2.7 KiB
Text

# Contributor: Carlo Landmeter <clandmeter@alpinelinux.org>
# Contributor: Chloe Kudryavtsev <code@toast.bunkerlabs.net>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: Celeste <cielesti@protonmail.com>
maintainer="Celeste <cielesti@protonmail.com>"
pkgname=minio
pkgver=0.20250524.170830
# 0.20230324.214123 -> 2023-03-24T21-41-23Z
_pkgver="${pkgver:2:4}-${pkgver:6:2}-${pkgver:8:2}T${pkgver:11:2}-${pkgver:13:2}-${pkgver:15:2}Z"
pkgrel=0
pkgdesc="Open source object storage server compatible with Amazon S3"
url="https://min.io/"
# armhf, armv7, x86: test failures
arch="all !armhf !armv7 !x86"
license="AGPL-3.0-or-later"
makedepends="go"
pkgusers="minio"
pkggroups="minio"
install="$pkgname.pre-install"
subpackages="$pkgname-openrc"
source="https://github.com/minio/minio/archive/RELEASE.$_pkgver/minio-$pkgver.tar.gz
$pkgname.initd
$pkgname.confd
$pkgname.logrotate
"
builddir="$srcdir/$pkgname-RELEASE.$_pkgver"
options="net"
# secfixes:
# 0.20240131.202033-r0:
# - CVE-2024-24747
# 0.20200423-r0:
# - CVE-2020-11012
export GOCACHE="${GOCACHE:-"$srcdir/go-cache"}"
export GOTMPDIR="${GOTMPDIR:-"$srcdir"}"
export GOMODCACHE="${GOMODCACHE:-"$srcdir/go"}"
build() {
local prefix='github.com/minio/minio/cmd'
local date=${_pkgver%%T*}
local time=${_pkgver#*T}
go build -tags kqueue -o bin/minio -ldflags "
-X $prefix.Version=${date}T${time//-/:}
-X $prefix.CopyrightYear=${date%%-*}
-X $prefix.ReleaseTag=RELEASE.$_pkgver
-X $prefix.CommitID=0000000000000000000000000000000000000000
-X $prefix.ShortCommitID=000000000000
"
}
check() {
# Excluded tests:
# minio/cmd - disk usage errors, doesn't know what btrfs is
export MINIO_API_REQUESTS_MAX=10000
# shellcheck disable=2046
go test -tags kqueue $(go list ./... | grep -v -e 'minio/cmd')
}
package() {
install -Dm755 "$builddir"/bin/minio -t "$pkgdir"/usr/bin/
install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
install -Dm644 "$srcdir"/$pkgname.logrotate "$pkgdir"/etc/logrotate.d/$pkgname
# This file contains secrets.
install -Dm640 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
install -d -m700 -o minio -g minio "$pkgdir"/var/lib/$pkgname
}
sha512sums="
becfbcf328fa7b754311285397e0c45010c6fdde32ab591f836618e6e68584385b9248ed7326f07452b35ff02faf14c59ba887ab3527d92fff9557d5cd6eb334 minio-0.20250524.170830.tar.gz
084373e2f0fd35e0c2c86abbcac3e7611a9931608b3aaf9a76677bc5d2f70944917ae8ad6ec401f989eccf8a5e82891764bb5882624bb48857f85c0ba53ffb83 minio.initd
4710b19471af3d84405b543776d88bf48c9276dd676417f9b6e915e866d934b8e64546aaa5cbfc2a3c23243ec5e4959a1a5b62ba850759b1029f99baa27cbefe minio.confd
9c6c0f1041989d999b9ff567e8ece29a91e32c98cce9ee6471a7044cce2d8b7b02459753dd593ed6d7eb8bf308abc219c3eb87177e855addd04b286cb60e657f minio.logrotate
"