blob: 498a3942e4f77c993e8cf5357b6c66f151c425ec (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# Maintainer: Prasanth Baskar <bupdprasanth@gmail.com>
pkgname=harbor-cli
pkgver=0.0.2
pkgrel=2
pkgdesc='Official Harbor CLI'
arch=('x86_64')
url='https://goharbor.io'
license=('Apache-2.0')
makedepends=('git' 'go')
# options=('!lto')
source=("$pkgname::git+https://github.com/goharbor/harbor-cli.git#tag=v$pkgver")
sha512sums=('SKIP')
b2sums=('SKIP')
prepare() {
cd "$srcdir/$pkgname"
# directory for the build output
mkdir -p build
export CGO_CPPFLAGS="${CPPFLAGS}"
export CGO_CFLAGS="${CFLAGS}"
export CGO_CXXFLAGS="${CXXFLAGS}"
export CGO_LDFLAGS="${LDFLAGS}"
export GOFLAGS="-buildmode=pie -trimpath -mod=readonly -modcacherw"
go mod download # Download Go modules/dependencies
}
build() {
cd "$srcdir/$pkgname"
# build harbor
# Ensure Go flags are set and build the binary
go build \
-trimpath \
-buildmode=pie \
-mod=readonly \
-modcacherw \
-ldflags "-linkmode external \
-X github.com/goharbor/harbor-cli/cmd/harbor/internal/version.Version=$(git describe --tags --abbrev=0) \
-X github.com/goharbor/harbor-cli/cmd/harbor/internal/version.GitCommit=$(git rev-parse HEAD) \
-X github.com/goharbor/harbor-cli/cmd/harbor/internal/version.BuildTime=$(date -u +'%Y-%m-%dT%H:%M:%SZ') \
-X github.com/goharbor/harbor-cli/cmd/harbor/internal/version.ReleaseChannel=stable \
-X github.com/goharbor/harbor-cli/cmd/harbor/internal/version.GoVersion=$(go version | awk '{print $3}')" \
-o "$srcdir/$pkgname/build/harbor" ./cmd/harbor/main.go
}
package() {
cd "$srcdir/$pkgname"
install -vDm755 -t "$pkgdir/usr/bin" build/harbor
}
|