66 - master
77 pull_request :
88
9+ concurrency :
10+ # When a PR number isn't available, the event won't be a `pull_request` event so it won't matter.
11+ group : ${{ github.workflow }}-${{ github.event.pull_request.number }}
12+ # Only cancel when the event is a pull_request
13+ cancel-in-progress : ${{ github.event_name == 'pull_request' }}
14+
915jobs :
1016 unity-testsuite :
1117 runs-on : spacetimedb-runner
@@ -83,15 +89,20 @@ jobs:
8389 CARGO_TARGET_DIR : demo/Blackholio/server-rust/target
8490
8591 - name : Check quickstart-chat bindings are up to date
86- working-directory : sdks/csharp/examples~/quickstart-chat
92+ working-directory : sdks/csharp
93+ run : |
94+ bash tools~/gen-quickstart.sh
95+ "${GITHUB_WORKSPACE}"/tools/check-diff.sh examples~/quickstart-chat || {
96+ echo 'Error: quickstart-chat bindings have changed. Please run `sdks/csharp/tools~/gen-quickstart.sh`.'
97+ exit 1
98+ }
99+
100+ - name : Check client-api bindings are up to date
101+ working-directory : sdks/csharp
87102 run : |
88- bash ../../tools~/gen-quickstart.sh "${GITHUB_WORKSPACE}"
89- # This was copied from tools/check-diff.sh.
90- # It's required because `spacetime generate` creates lines with the SpacetimeDB commit
91- # version, which would make this `git diff` check very brittle if included.
92- PATTERN='^// This was generated using spacetimedb cli version.*'
93- git diff --exit-code --ignore-matching-lines="$PATTERN" -- . || {
94- echo "Error: quickstart-chat bindings have changed. Please regenerate the bindings and commit them to this branch."
103+ bash tools~/gen-client-api.sh
104+ "${GITHUB_WORKSPACE}"/tools/check-diff.sh src/SpacetimeDB/ClientApi || {
105+ echo 'Error: Client API bindings are dirty. Please run `sdks/csharp/tools~/gen-client-api.sh`.'
95106 exit 1
96107 }
97108
@@ -101,12 +112,8 @@ jobs:
101112
102113 - name : Check for changes
103114 run : |
104- # This was copied from tools/check-diff.sh.
105- # It's required because `spacetime generate` creates lines with the SpacetimeDB commit
106- # version, which would make this `git diff` check very brittle if included.
107- PATTERN='^// This was generated using spacetimedb cli version.*'
108- git diff --exit-code --ignore-matching-lines="$PATTERN" -- demo/Blackholio/client-unity/Assets/Scripts/autogen || {
109- echo "Error: Bindings are dirty. Please generate bindings again and commit them to this branch."
115+ tools/check-diff.sh demo/Blackholio/client-unity/Assets/Scripts/autogen || {
116+ echo 'Error: Bindings are dirty. Please run `demo/Blackholio/server-rust/generate.sh`.'
110117 exit 1
111118 }
112119
@@ -124,7 +131,12 @@ jobs:
124131 disown
125132
126133 - name : Run regression tests
127- run : bash sdks/csharp/tools~/run-regression-tests.sh .
134+ run : |
135+ bash sdks/csharp/tools~/run-regression-tests.sh
136+ tools/check-diff.sh sdks/csharp/examples~/regression-tests || {
137+ echo 'Error: Bindings are dirty. Please run `sdks/csharp/tools~/gen-regression-tests.sh`.'
138+ exit 1
139+ }
128140
129141 - name : Publish unity-tests module to SpacetimeDB
130142 working-directory : demo/Blackholio/server-rust
0 commit comments