blob: f6b55da7e4cae6d4d765b7a51e0ceee984fae0f6 (
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
name: CI
on:
push:
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: "1.16"
- run: |
go fmt ./...
go vet ./...
test:
name: Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: "1.16"
- run: |
cd testdata
go run ../cmd/svgu/svgu.go -o=dst -v -c=DOMAINS.star
build:
name: Build
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
go: ["1.16", "1.17", "1.18", "1.19", "1.20"]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go }}
- run: go build -v -o svgu.o cmd/svgu/svgu.go
release:
name: Release
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: "1.16"
- name: Cross-platform build
run: |
mkdir out
# GNU/Linux
export GOOS=linux
export GOARCH=amd64
go build -o svgu-linux-amd64 cmd/svgu/svgu.go
export GOARCH=arm64
go build -o svgu-linux-arm64 cmd/svgu/svgu.go
# macOS
export GOOS=darwin
export GOARCH=amd64
go build -o svgu-darwin-amd64 cmd/svgu/svgu.go
export GOARCH=arm64
go build -o svgu-darwin-arm64 cmd/svgu/svgu.go
# Microsoft Windows
export GOOS=windows
export GOARCH=amd64
go build -o svgu-windows-amd64.exe cmd/svgu/svgu.go
# Plan 9 from Bell Labs
export GOOS=plan9
export GOARCH=amd64
go build -o svgu-plan9-amd64 cmd/svgu/svgu.go
# FreeBSD
export GOOS=freebsd
export GOARCH=amd64
go build -o svgu-freebsd-amd64 cmd/svgu/svgu.go
export GOARCH=arm64
go build -o svgu-freebsd-arm64 cmd/svgu/svgu.go
# OpenBSD
export GOOS=openbsd
export GOARCH=amd64
go build -o svgu-openbsd-amd64 cmd/svgu/svgu.go
export GOARCH=arm64
go build -o svgu-openbsd-arm64 cmd/svgu/svgu.go
# NetBSD
export GOOS=netbsd
export GOARCH=amd64
go build -o svgu-netbsd-amd64 cmd/svgu/svgu.go
export GOARCH=arm64
go build -o svgu-netbsd-arm64 cmd/svgu/svgu.go
# OpenSolaris
export GOOS=solaris
export GOARCH=amd64
go build -o svgu-solaris-amd64 cmd/svgu/svgu.go
# DragonFly BSD
export GOOS=dragonfly
export GOARCH=amd64
go build -o svgu-dragonfly-amd64 cmd/svgu/svgu.go
- uses: ncipollo/release-action@v1
with:
artifacts: svgu-*
body: |
By ${{ github.actor }} on ${{ github.event_name }}:
${{ github.event.head_commit.message }}
${{ github.event.head_commit.url }}
makeLatest: true
tag: ${{ github.sha }}
name: Commit ${{ github.sha }}
|