| similarity index 66% |
| rename from .amadan/ci.d/20-cross@3 |
| rename to .amadan/ci.d/20-cross@5 |
| index 6f79790c5..9dec4b177 100755 |
| --- a/.amadan/ci.d/20-cross@3 |
| +++ b/.amadan/ci.d/20-cross@5 |
| @@ -9,9 +9,16 @@ |
| # built it was on Linux. Cross-compiling catches it in seconds and needs |
| # no Mac. |
| # |
| -# The @3 is amadan's whole sharding interface: it runs this script three |
| +# Windows is a CLIENT target: `carlos deploy` from a Windows workstation |
| +# against a Linux fleet. The box-side packages still have to COMPILE |
| +# there, because the CLI is the same binary as the agent, so unix-only |
| +# syscalls live behind per-OS files (internal/edge/purge_listen_*.go, |
| +# internal/host/{statfs,flock}_*.go). These two shards are what stops |
| +# the next syscall.Foo from silently un-shipping the Windows build. |
| +# |
| +# The @5 is amadan's whole sharding interface: it runs this script five |
| # times concurrently and tells each copy which one it is. One target per |
| -# shard rather than three builds in a row, because they are independent |
| +# shard rather than five builds in a row, because they are independent |
| # and this box has the cores — and because a failing target then names |
| # itself in the shard that failed, instead of being the first line of a |
| # combined log. |
| @@ -22,12 +29,12 @@ shards=${AMADAN_SHARD_COUNT:?this step must be run by amadan CI, which sets AMAD |
| |
| # The fence. The targets below are a fixed list, and the shard count in |
| # this file's name is what deals them out — so the two MUST agree. Rename |
| -# this to @2 and, without this check, one platform silently stops being |
| +# this to @4 and, without this check, one platform silently stops being |
| # compiled while CI stays green. That is the exact shape of the bug the |
| # job exists to catch, arriving through the job that catches it. |
| -if [ "$shards" -ne 3 ]; then |
| - echo "this step deals 3 fixed targets but was run with $shards shards —" |
| - echo "rename the file back to 20-cross@3, or add a target below" |
| +if [ "$shards" -ne 5 ]; then |
| + echo "this step deals 5 fixed targets but was run with $shards shards —" |
| + echo "rename the file back to 20-cross@5, or add a target below" |
| exit 1 |
| fi |
| |
| @@ -35,6 +42,8 @@ case "$shard" in |
| 0) GOOS=darwin GOARCH=arm64 ;; |
| 1) GOOS=darwin GOARCH=amd64 ;; |
| 2) GOOS=linux GOARCH=arm64 ;; |
| +3) GOOS=windows GOARCH=amd64 ;; |
| +4) GOOS=windows GOARCH=arm64 ;; |
| *) echo "no target for shard $shard"; exit 1 ;; |
| esac |
| |