Skip to content

Commit 4ee75fd

Browse files
committed
ci: update project executables
1 parent d256518 commit 4ee75fd

File tree

7 files changed

+55
-36
lines changed

7 files changed

+55
-36
lines changed

.execs/build.flow

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@ executables:
88
failFast: false
99
execs:
1010
- ref: generate cli
11-
- ref: generate completions
1211
- ref: generate docs
13-
- ref: generate frontend
14-
- ref: generate backend
12+
- ref: generate tauri
1513

1614
- verb: build
1715
name: binary
@@ -31,20 +29,17 @@ executables:
3129
go build -o ${BIN_PATH}/${BIN_NAME}
3230
echo "flow built at ${BIN_PATH}/${BIN_NAME}"
3331

34-
- verb: generate
35-
name: completions
36-
tags: [docs]
37-
exec:
38-
dir: //
39-
cmd: ./scripts/completions.sh
40-
4132
- verb: generate
4233
name: docs
4334
aliases: [documentation]
35+
description: Generate docsify documentation for the project.
4436
tags: [docs]
45-
exec:
37+
parallel:
38+
failFast: false
4639
dir: //
47-
cmd: go run ./tools/docsgen/.
40+
execs:
41+
- cmd: go run ./tools/docsgen/.
42+
- cmd: ./scripts/completions.sh
4843

4944
- verb: generate
5045
name: cli
@@ -63,6 +58,7 @@ executables:
6358
tags: [desktop]
6459
description: Generate code for the Tauri frontend and backend.
6560
parallel:
61+
failFast: false
6662
execs:
6763
- ref: generate frontend
6864
- ref: generate backend

.execs/container.flow

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ executables:
2222
GOOS=linux GOARCH=amd64 go build -o flow
2323
echo "building container image..."
2424
$BUILDER build -t $IMAGE_REPO:$IMAGE_TAG .
25+
rm flow
2526

2627
- verb: run
2728
name: container

.execs/helpers.flow

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,14 @@
22
tags: [development, helper]
33
executables:
44
- verb: clean
5-
name: ci
6-
aliases: [codecov]
7-
tags: [coverage, ci]
8-
description: Clean up coverage files
5+
name: tmp
6+
aliases: [artifacts, ci]
7+
description: Remove the temporary files created by executable runs
98
exec:
109
dir: //
1110
cmd: |
12-
echo "Cleaning CI temp files..."
13-
rm -f *.sarif *.out
11+
echo "Cleaning coverage files..."
12+
rm -f *.sarif *.out || true
13+
echo "Clearing the bin directory..."
14+
rm -rf .bin || true
15+
rm ./flow || true

.execs/test.flow

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,13 @@ executables:
4949
execs:
5050
- cmd: |
5151
set -e
52-
echo "Running Go unit tests with coverage..."
53-
go test -race -coverprofile=unit-coverage.out -covermode=atomic -tags=unit ./...
52+
echo "Running Go unit tests..."
53+
if [ "$CI" = "true" ]; then
54+
echo "Running Go unit tests with coverage..."
55+
go test -race -coverprofile=unit-coverage.out -covermode=atomic -tags=unit ./...
56+
else
57+
go test -race -tags=unit ./...
58+
fi
5459
echo "Unit tests completed"
5560
retries: 3
5661

@@ -64,7 +69,12 @@ executables:
6469
- cmd: |
6570
set -e
6671
echo "Running Go E2E tests..."
67-
go test -race -coverprofile=e2e-coverage.out -covermode=atomic -coverpkg=./... -tags=e2e ./tests/...
72+
if [ "$CI" = "true" ]; then
73+
echo "Running Go E2E tests with coverage..."
74+
go test -race -coverprofile=e2e-coverage.out -covermode=atomic -coverpkg=./... -tags=e2e ./tests/...
75+
else
76+
go test -race -tags=e2e ./tests/...
77+
fi
6878
echo "E2E tests completed"
6979
retries: 1
7080

.execs/validate.flow

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,19 +37,23 @@ executables:
3737
description: Run linters and formatters
3838
parallel:
3939
dir: //
40+
failFast: false
4041
execs:
4142
- cmd: go fmt ./...
42-
dir: //
4343
- cmd: go mod tidy
44-
dir: //
4544
- cmd: |
4645
if ! command -v golangci-lint &> /dev/null; then
4746
echo "Installing golangci-lint..."
4847
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/HEAD/install.sh | sh -s v2.1.6
4948
export PATH="$PATH:./bin"
5049
fi
5150

52-
golangci-lint run ./... --fix --output.sarif.path lint.sarif
51+
if [ "$CI" = "true" ]; then
52+
echo "Running golangci-lint with sarif output..."
53+
golangci-lint run ./... --fix --output.sarif.path lint.sarif
54+
else
55+
golangci-lint run ./... --fix
56+
fi
5357

5458
- verb: lint
5559
name: ts
@@ -67,12 +71,15 @@ executables:
6771
exec:
6872
dir: //
6973
cmd: |
70-
echo "Running security scan..."
71-
7274
if ! command -v govulncheck &> /dev/null; then
7375
echo "Installing govulncheck..."
7476
go install golang.org/x/vuln/cmd/govulncheck@latest
7577
fi
7678

77-
govulncheck -format sarif ./... > govuln.sarif
78-
echo "Security scan completed. Results saved to govuln.sarif"
79+
if [ "$CI" = "true" ]; then
80+
govulncheck -format sarif ./... > govuln.sarif
81+
echo "Security scan completed. Results saved to govuln.sarif"
82+
else
83+
govulncheck ./...
84+
echo "Security scan completed. No vulnerabilities found."
85+
fi

.github/workflows/ci.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
go-version: "^1.24"
2525
- uses: jahvon/[email protected]
2626
with:
27-
executable: 'lint go'
27+
executable: 'lint go --param CI=true'
2828
timeout: '5m'
2929
flow-version: 'main'
3030
- name: Upload SARIF file
@@ -43,7 +43,7 @@ jobs:
4343
go-version: "^1.24"
4444
- uses: jahvon/[email protected]
4545
with:
46-
executable: 'test unit'
46+
executable: 'test unit --param CI=true'
4747
timeout: '5m'
4848
flow-version: 'main'
4949
id: unit-tests
@@ -63,7 +63,7 @@ jobs:
6363
go-version: "^1.24"
6464
- uses: jahvon/[email protected]
6565
with:
66-
executable: 'test e2e'
66+
executable: 'test e2e --param CI=true'
6767
timeout: '10m'
6868
flow-version: 'main'
6969
secrets: |

docs/development.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,20 @@ The `flow` project contains a few development executables that can be run locall
2727
workspace, you can run the following commands:
2828

2929
```sh
30-
# Install local dependencies
31-
flow install deps
30+
# Install Go tool dependencies
31+
flow install tools
3232

33-
# Build the project
33+
# Build the CLI binary
3434
flow build binary <output-path>
3535

3636
# Validate code changes (runs tests, linters, codegen, etc)
3737
flow validate
3838

39-
# Run only tests
40-
flow run tests
39+
# Only generate code
40+
flow generate
41+
42+
# Only run tests
43+
flow test all
4144
```
4245

4346
### Working with generated types

0 commit comments

Comments
 (0)