Attempt different method for outlinecaddy build

This commit is contained in:
lunarthegrey 2025-10-09 02:10:37 -05:00
parent 72bb7c7b4a
commit e394dca5be
3 changed files with 27 additions and 7 deletions

7
go.mod
View file

@ -5,10 +5,9 @@ go 1.23
toolchain go1.24.5
require (
github.com/Jigsaw-Code/outline-ss-server v1.9.2
github.com/Jigsaw-Code/outline-ss-server/outlinecaddy v0.0.1
github.com/go-task/task/v3 v3.36.0
github.com/google/addlicense v1.1.1
github.com/Jigsaw-Code/outline-ss-server v1.9.2
github.com/go-task/task/v3 v3.36.0
github.com/google/addlicense v1.1.1
)
require (

2
go.sum
View file

@ -4,8 +4,6 @@ github.com/Jigsaw-Code/outline-sdk/x v0.0.2-0.20250304133713-52f1a365e5ed h1:Nfy
github.com/Jigsaw-Code/outline-sdk/x v0.0.2-0.20250304133713-52f1a365e5ed/go.mod h1:aFUEz6Z/eD0NS3c3fEIX+JO2D9aIrXCmWTb1zJFlItw=
github.com/Jigsaw-Code/outline-ss-server v1.9.2 h1:8AlzPLugCCa9H4ZIV79rWOdgVshRzKZalq8ZD+APjqk=
github.com/Jigsaw-Code/outline-ss-server v1.9.2/go.mod h1:v0jS3ExOGwGTbWTpOw16/sid91k7PKxazdK9eLCpUlQ=
github.com/Jigsaw-Code/outline-ss-server/outlinecaddy v0.0.1 h1:V6XDwphZ0UAf7YUte4NsM48j6o6Cd4p9LaGLxUTSv0A=
github.com/Jigsaw-Code/outline-ss-server/outlinecaddy v0.0.1/go.mod h1:57uq2C5kK9iIHhokI/9/Vx4E5Q4CL61GCU/DbFWj7fg=
github.com/Masterminds/semver/v3 v3.3.1 h1:QtNSWtVZ3nBfk8mAOu/B6v7FMJ+NHTIgUPi7rj+4nv4=
github.com/Masterminds/semver/v3 v3.3.1/go.mod h1:4V+yj/TJE1HU9XfppCwVMZq3I84lprf4nC11bSS5beM=
github.com/caddyserver/caddy/v2 v2.9.1 h1:OEYiZ7DbCzAWVb6TNEkjRcSCRGHVoZsJinoDR/n9oaY=

View file

@ -18,6 +18,22 @@ requires:
vars: [OUTPUT_BASE]
tasks:
download_xcaddy:
desc: Download xcaddy
requires: {vars: [TARGET_DIR]}
vars:
XCADDY_VERSION: v0.4.5
XCADDY_FILE: '{{if eq .GOARCH "amd64"}}xcaddy_{{.XCADDY_VERSION}}_{{OS}}_x86_64{{else}}xcaddy_{{.XCADDY_VERSION}}_{{OS}}_{{.GOARCH}}{{end}}.tar.gz'
XCADDY_URL: 'https://github.com/caddyserver/xcaddy/releases/download/{{.XCADDY_VERSION}}/{{.XCADDY_FILE}}'
cmds:
- mkdir -p '{{.TARGET_DIR}}'
- |
tmpdir=$(mktemp -d)
curl -fsSL '{{.XCADDY_URL}}' -o "$tmpdir/xcaddy.tgz"
tar -xzf "$tmpdir/xcaddy.tgz" -C '{{.TARGET_DIR}}' xcaddy
rm -rf "$tmpdir"
- chmod +x '{{joinPath .TARGET_DIR "xcaddy"}}'
build:
desc: Build the Outline Server Node.js app
vars:
@ -40,7 +56,14 @@ tasks:
vars: {TARGET_DIR: '{{.BIN_DIR}}'}
# Set CGO_ENABLED=0 to force static linkage. See https://mt165.co.uk/blog/static-link-go/.
- GOOS={{.TARGET_OS}} GOARCH={{.GOARCH}} CGO_ENABLED=0 go build -ldflags='-s -w -X main.version=embedded' -o '{{.BIN_DIR}}/' github.com/Jigsaw-Code/outline-ss-server/cmd/outline-ss-server
- GOOS={{.TARGET_OS}} GOARCH={{.GOARCH}} CGO_ENABLED=0 go build -tags='nomysql' -ldflags='-s -w' -o '{{.BIN_DIR}}/outline-caddy' github.com/Jigsaw-Code/outline-ss-server/outlinecaddy/cmd/caddy
- task: download_xcaddy
vars:
TARGET_DIR: '{{.BIN_DIR}}'
- |
'{{joinPath .BIN_DIR "xcaddy"}}' build --output '{{joinPath .BIN_DIR "outline-caddy"}}' \
--with github.com/Jigsaw-Code/outline-ss-server/outlinecaddy@v0.0.1 \
--with github.com/iamd3vil/caddy_yaml_adapter@v0.0.0-20200503183711-d479c29b475a \
--with github.com/mholt/caddy-l4@v0.0.0-20250102174933-6e5f5e311ead
start:
desc: Run the Outline server locally