-
Notifications
You must be signed in to change notification settings - Fork 0
/
piper.cue
72 lines (58 loc) · 1.14 KB
/
piper.cue
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package main
import (
"strings"
"piper.octohelm.tech/wd"
"piper.octohelm.tech/client"
"piper.octohelm.tech/container"
"github.com/octohelm/piper/cuepkg/debian"
"github.com/octohelm/piper/cuepkg/golang"
"github.com/octohelm/piper/cuepkg/containerutil"
)
hosts: {
local: wd.#Local & {
}
}
pkg: {
_ver: client.#RevInfo & {
}
version: _ver.version
}
actions: go: golang.#Project & {
cwd: hosts.local.dir
version: pkg.version
goos: ["linux"]
goarch: ["amd64", "arm64"]
main: "./cmd/unifs"
ldflags: [
"-s -w",
"-X \(go.module)/internal/version.version=\(go.version)",
]
env: {
GOEXPERIMENT: "rangefunc"
}
}
actions: ship: containerutil.#Ship & {
name: "\(strings.Replace(actions.go.module, "github.com/", "ghcr.io/", -1))"
tag: pkg.version
from: "docker.io/library/debian:bookworm-slim"
steps: [
debian.#InstallPackage & {
packages: "fuse3": _
},
container.#Set & {
config: cmd: ["csidriver"]
},
]
}
settings: {
_env: client.#Env & {
GH_USERNAME!: string
GH_PASSWORD!: client.#Secret
}
registry: container.#Config & {
auths: "ghcr.io": {
username: _env.GH_USERNAME
secret: _env.GH_PASSWORD
}
}
}