Commit Graph

8 Commits

Author SHA1 Message Date
Zeke Foppa ee69be7073 CI - Cancel internal tests if cancelled (#3674)
# Description of Changes

`Internal Tests` invoke another workflow. If the calling workflow is
cancelled, now we also cancel the invoked workflow.

# API and ABI breaking changes

None.

# Expected complexity level and risk

2

# Testing

- [x] Push multiple commits to this PR, see that the invoked job is
cancelled
- [x] Manually cancel the `Internal Tests` job, see that the invoked job
is cancelled

---------

Co-authored-by: John Detter <4099508+jdetter@users.noreply.github.com>
Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-11-17 22:14:33 +00:00
Zeke Foppa 703fae2ed6 Switch Internal Tests to reuse CI job (#3625)
# Description of Changes

Switch the `Internal Tests` job to re-use the existing CI workflow
instead of a separate one.

# API and ABI breaking changes

None. CI only.

# Expected complexity level and risk

1

# Testing

- [x] Internal Tests passes on this PR

---------

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-11-12 18:21:08 +00:00
Zeke Foppa 6bf3efc006 CI - Fix format strings (#3627)
# Description of Changes

I allowed chatgpt to mislead me about how to do these format strings.
Apparently this is the wrong syntax. I've now verified the correct
syntax:
https://docs.github.com/en/actions/reference/workflows-and-actions/expressions#format

# API and ABI breaking changes

CI only.

# Expected complexity level and risk

1

# Testing

I honestly don't know how to check what concurrency group something is
running in..

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-11-11 00:12:53 +00:00
Zeke Foppa 09bca44c56 CI - Make Internal Tests less brittle (#3536)
# Description of Changes

For some reason, the Internal Tests have trouble fetching the commit
sha, especially when the job is re-run. This PR switches it to using ref
names rather than commit sha, because the ref names are much more
durable than GitHub's ephemeral commits that it generates during
workflows.

# API and ABI breaking changes

None. CI only.

# Expected complexity level and risk

1

# Testing

- [x] CI still passes
- [x] Ref still gets checked out successfully on re-run.

---------

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-11-07 22:44:52 +00:00
Zeke Foppa 7c4c3ddeea CI - Fix the merge queue (#3571)
# Description of Changes

The merge queue was (partly) getting borked because we were putting all
non-PR CI events into the same concurrency group, which meant they all
non-PR CI jobs would run sequentially instead of running in parallel.
This sometimes caused _painfully_ long delays in the merge queue.

This was due to my misunderstanding in
https://github.com/clockworklabs/SpacetimeDB/pull/3501#discussion_r2466570395,
where I didn't realize that `cancel-in-progress: false` would cause
everything to queue up.

Now, for non-PR events, we append the commit SHA to the concurrency
group. For merge queue events, this should be the SHA of the ephemeral
merge commit that GH creates, so it will never conflict. For push events
or manual workflow dispatch events, the SHA should be a sane way to
recognize/cancel redundant events.

# API and ABI breaking changes

None. CI-only change.

# Expected complexity level and risk

1

# Testing

- [x] PR CI passes on this PR
- [x] PR CI is still canceled on this PR if a new commit is pushed

Unfortunately it's hard to test the behavior for non-PR events without
merging and seeing if it works.

---------

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-11-05 20:25:00 +00:00
Zeke Foppa 2516357c8d CI - Skip Internal Tests and Unreal Tests on external PRs (#3522)
# Description of Changes

These tests fail on external PRs, but not for any real reasons - just
because GH secrets are missing. "Skipped" is more informative than
"failed".

# API and ABI breaking changes

None.

# Expected complexity level and risk

1

# Testing

None, but I just copied the logic from the unity testsuite.

---------

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-10-28 19:28:12 +00:00
Zeke Foppa 9ad5e7038a CI - Cancel runs on new pushes (#3501)
# Description of Changes

Add `cancel-in-progress` to our GitHub workflows.

# API and ABI breaking changes

None

# Expected complexity level and risk

1

# Testing

- [x] Pushing new commits to this PR causes cancels of previous CI runs

---------

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-10-27 19:15:21 +00:00
Zeke Foppa 0f0cb47d03 CI - Move Internal Tests to GitHub (#3436)
# Description of Changes

Move a version of the Jenkins logic into a GitHub workflow. See the
linked issue for more context.

# API and ABI breaking changes

None. CI only.

# Expected complexity level and risk

2

# Testing

- [x] Tests currently passing on this PR
- [x] Tests fail with appropriate error if made to fail, e.g. version
bump
(https://github.com/clockworklabs/SpacetimeDB/actions/runs/18666569784/job/53219039721)
- [x] If the timeout is sharply reduced, we get an appropriate timeout
message
(https://github.com/clockworklabs/SpacetimeDB/actions/runs/18693760959/job/53305759272?pr=3436)

---------

Co-authored-by: Zeke Foppa <bfops@users.noreply.github.com>
2025-10-21 19:33:17 +00:00