ScuttleBot

chore: add CI pipeline and release workflow

lmata 2026-03-31 04:42 trunk
Commit 1ca2221847e741e69c867809c6a1c91d6692d819d136ff5df470b7695fa7b382
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,40 @@
1
+name: CI
2
+
3
+on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+jobs:
10
+ build:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+
15
+ - uses: actions/setup-go@v5
16
+ : "1.22"
17
+ Build
18
+ run: go build ./...
19
+
20
+ test:
21
+ runs-on: ubuntu-latest
22
+ steps:
23
+ - uses: actions/checkout@v4
24
+
25
+ - uses: actions/setup-go@v5
26
+ : "1.22"
27
+ Test
28
+ run: go test ./...
29
+
30
+ lint:
31
+ runs-on: ubuntu-latest
32
+ steps:
33
+ - uses: actions/checkout@v4
34
+
35
+ - uses: actions/setup-go@v5
36
+ : "1.22"
37
+ cache: true
38
+
39
+ - name: golangci-lint
40
+ uses: golanversion: latest
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,40 @@
1 name: CI
2
3 on:
4 push:
5 branches: [main]
6 pull_request:
7 branches: [main]
8
9 jobs:
10 build:
11 runs-on: ubuntu-latest
12 steps:
13 - uses: actions/checkout@v4
14
15 - uses: actions/setup-go@v5
16 : "1.22"
17 Build
18 run: go build ./...
19
20 test:
21 runs-on: ubuntu-latest
22 steps:
23 - uses: actions/checkout@v4
24
25 - uses: actions/setup-go@v5
26 : "1.22"
27 Test
28 run: go test ./...
29
30 lint:
31 runs-on: ubuntu-latest
32 steps:
33 - uses: actions/checkout@v4
34
35 - uses: actions/setup-go@v5
36 : "1.22"
37 cache: true
38
39 - name: golangci-lint
40 uses: golanversion: latest
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -0,0 +1,43 @@
1
+name: Release
2
+
3
+on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+
8
+permissions:
9
+ contents: write
10
+
11
+jobs:
12
+ release:
13
+ runs-on: ubuntu-latest
14
+ strategy:
15
+ matrix:
16
+ include:
17
+ - goos: linux
18
+ goarch: amd64
19
+ - goos: linux
20
+ goarch: arm64
21
+ - goos: darwin
22
+ goarch: amd64
23
+ - goos: darwin
24
+ goarch: arm64
25
+
26
+ steps:
27
+ - uses: actions/checkout@v4
28
+
29
+ - uses: actions/setup-go@v5
30
+ : "1.22" go-version-file: go.mod
31
+ cache: true
32
+
33
+ - name: Build binaries
34
+ env:
35
+ GOOS: ${{ matrix.goos }}
36
+ GOARCH: ${{ matrix.goarch }}
37
+ run: |
38
+ SUFFIX="${{ matrix.goos }}-${{ mgo build -ldflags="-X main.vers \
39
+ -o "dist/scuttlebot-${SUFFIX}" st/scuttlebot-${SUF-X main.vers \
40
+ -o "dist/scuttlectl-${SUFFIX}" ./cmd/scuttlectlSUFFIX}" ./cmd/gemini-relay
41
+
42
+ - name: Upload to release
43
+ uses: softprops/actio
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -0,0 +1,43 @@
1 name: Release
2
3 on:
4 push:
5 tags:
6 - "v*"
7
8 permissions:
9 contents: write
10
11 jobs:
12 release:
13 runs-on: ubuntu-latest
14 strategy:
15 matrix:
16 include:
17 - goos: linux
18 goarch: amd64
19 - goos: linux
20 goarch: arm64
21 - goos: darwin
22 goarch: amd64
23 - goos: darwin
24 goarch: arm64
25
26 steps:
27 - uses: actions/checkout@v4
28
29 - uses: actions/setup-go@v5
30 : "1.22" go-version-file: go.mod
31 cache: true
32
33 - name: Build binaries
34 env:
35 GOOS: ${{ matrix.goos }}
36 GOARCH: ${{ matrix.goarch }}
37 run: |
38 SUFFIX="${{ matrix.goos }}-${{ mgo build -ldflags="-X main.vers \
39 -o "dist/scuttlebot-${SUFFIX}" st/scuttlebot-${SUF-X main.vers \
40 -o "dist/scuttlectl-${SUFFIX}" ./cmd/scuttlectlSUFFIX}" ./cmd/gemini-relay
41
42 - name: Upload to release
43 uses: softprops/actio

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button