diff options
Diffstat (limited to 'yeetfile.js')
| -rw-r--r-- | yeetfile.js | 230 |
1 files changed, 122 insertions, 108 deletions
diff --git a/yeetfile.js b/yeetfile.js index a9c923a..946e764 100644 --- a/yeetfile.js +++ b/yeetfile.js @@ -22,114 +22,128 @@ $`ko build --platform=all --base-import-paths --tags=latest,${git.tag()} ./cmd/{ yeet.setenv("CGO_ENABLED", "0"); +const pkgs = []; + ["amd64", "arm64"].forEach((goarch) => { - [deb, rpm, tarball].forEach((method) => { - method.build({ - name: "ingressd", - description: "ingress for my homelab", - homepage: "https://within.website", - license: "CC0", - goarch, - - documentation: { - LICENSE: "LICENSE", - }, - - build: ({ bin, systemd }) => { - $`go build -o ${bin}/ingressd -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/ingressd`; - file.install( - "./cmd/ingressd/ingressd.service", - `${systemd}/ingressd.service`, - ); - }, - }); - - method.build({ - name: "license", - description: "software license generator", - homepage: "https://within.website", - license: "CC0", - goarch, - - documentation: { - LICENSE: "LICENSE", - }, - - build: ({ bin }) => { - $`go build -o ${bin}/license -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/license`; - }, - }); - - method.build({ - name: "quickserv", - description: "Like python3 -m http.server but a single binary", - homepage: "https://within.website", - license: "CC0", - goarch, - - documentation: { - LICENSE: "LICENSE", - }, - - build: ({ bin }) => { - $`go build -o ${bin}/quickserv -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/quickserv`; - }, - }); - - method.build({ - name: "relayd", - description: "TLS termination and client fingerprinting", - homepage: "https://within.website", - license: "CC0", - goarch, - - documentation: { - LICENSE: "LICENSE", - }, - - configFiles: { - "cmd/relayd/relayd.env": "/etc/within.website/x/relayd.env", - }, - - build: ({ bin, systemd }) => { - $`go build -o ${bin}/relayd -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/relayd`; - file.install( - "./cmd/relayd/relayd.service", - `${systemd}/relayd.service`, - ); - }, - }); - - method.build({ - name: "uploud", - description: "Upload images to the cloud!", - homepage: "https://within.website", - license: "CC0", - goarch, - - documentation: { - LICENSE: "LICENSE", - }, - - build: ({ bin }) => { - $`go build -o ${bin}/uploud -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/uploud`; - }, - }); - - method.build({ - name: "x", - description: "the universal x command", - homepage: "https://within.website", - license: "CC0", - goarch, - - documentation: { - LICENSE: "LICENSE", - }, - - build: ({ bin, systemd }) => { - $`go build -o ${bin}/x -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/x`; - }, - }); + [deb, rpm].forEach((method) => { + pkgs.push( + method.build({ + name: "ingressd", + description: "ingress for my homelab", + homepage: "https://within.website", + license: "CC0", + goarch, + + documentation: { + LICENSE: "LICENSE", + }, + + build: ({ bin, systemd }) => { + $`go build -o ${bin}/ingressd -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/ingressd`; + file.install( + "./cmd/ingressd/ingressd.service", + `${systemd}/ingressd.service`, + ); + }, + }), + ); + + pkgs.push( + method.build({ + name: "license", + description: "software license generator", + homepage: "https://within.website", + license: "CC0", + goarch, + + documentation: { + LICENSE: "LICENSE", + }, + + build: ({ bin }) => { + $`go build -o ${bin}/license -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/license`; + }, + }), + ); + + pkgs.push( + method.build({ + name: "quickserv", + description: "Like python3 -m http.server but a single binary", + homepage: "https://within.website", + license: "CC0", + goarch, + + documentation: { + LICENSE: "LICENSE", + }, + + build: ({ bin }) => { + $`go build -o ${bin}/quickserv -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/quickserv`; + }, + }), + ); + + pkgs.push( + method.build({ + name: "relayd", + description: "TLS termination and client fingerprinting", + homepage: "https://within.website", + license: "CC0", + goarch, + + documentation: { + LICENSE: "LICENSE", + }, + + configFiles: { + "cmd/relayd/relayd.env": "/etc/within.website/x/relayd.env", + }, + + build: ({ bin, systemd }) => { + $`go build -o ${bin}/relayd -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/relayd`; + file.install( + "./cmd/relayd/relayd.service", + `${systemd}/relayd.service`, + ); + }, + }), + ); + + pkgs.push( + method.build({ + name: "uploud", + description: "Upload images to the cloud!", + homepage: "https://within.website", + license: "CC0", + goarch, + + documentation: { + LICENSE: "LICENSE", + }, + + build: ({ bin }) => { + $`go build -o ${bin}/uploud -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/uploud`; + }, + }), + ); + + pkgs.push( + method.build({ + name: "x", + description: "the universal x command", + homepage: "https://within.website", + license: "CC0", + goarch, + + documentation: { + LICENSE: "LICENSE", + }, + + build: ({ bin, systemd }) => { + $`go build -o ${bin}/x -ldflags '-s -w -extldflags "-static" -X "within.website/x.Version=${git.tag()}"' ./cmd/x`; + }, + }), + ); }); }); |
