| Mode | Size | Name |
| -rw-r--r-- | 4398 | README-adhoc-builds.md |
| -rw-r--r-- | 2204 | README-auth.md |
| -rw-r--r-- | 3343 | README-build-bsds.md |
| -rw-r--r-- | 4407 | README-build-windows.md |
| -rw-r--r-- | 4220 | README-findings.md |
| -rw-r--r-- | 1231 | README-gitolite-hook.md |
| -rw-r--r-- | 5002 | README-idle.md |
| -rw-r--r-- | 4424 | README-platform-naming.md |
| -rw-r--r-- | 4239 | README-pool.md |
| -rw-r--r-- | 3339 | README-resource-management.md |
| -rw-r--r-- | 4013 | README-sai-jig.md |
| -rw-r--r-- | 3507 | README-sai-json.md |
| -rw-r--r-- | 5095 | README-sai-power.md |
| -rw-r--r-- | 17591 | README-sai-push.md |
| -rw-r--r-- | 6146 | README-sai-virt.md |
| -rw-r--r-- | 24013 | README-systemd-nspawn.md |
| -rw-r--r-- | 4422 | README-watchers.md |
| -rw-r--r-- | 109316 | sai-build-test-flow.png |
| -rw-r--r-- | 104850 | sai-embedded-test.png |
| -rw-r--r-- | 106610 | sai-ov2.png |
| -rw-r--r-- | 268612 | sai-overview.png |
| -rw-r--r-- | 99164 | sai-resources.png |
Ad-hoc buildsNormally every push to a watched repo makes the git hook POST a signed
notification carrying the tree's Ad-hoc builds are the manual counterpart: from the web UI an admin picks an existing task as a seed, optionally edits its build steps, chooses which branch's head to build, and sai-server creates a new event containing just that one task. It runs on the real builders like any other task, but it doesn't count as CI for the branch. The intended workflow is
Scratch branchesA branch whose name begins with The git hook must still fire for The What the new task inheritsFrom the seed task: the platform, the From the seed task's event: the repo name and its fetch / web URLs. The browser never supplies a repo or a hash, only the seed task uuid, a ref and the build script; sai-server resolves the ref to a hash itself. The build script is the seed's expanded per-platform script, ie, with the
configuration's Everything else is fresh: uuids, artifact nonces, state. The seed's event is not modified. AuthorizationOnly browsers whose websocket was established with the front-end lws-login
interceptor's admin verdict ( Effects on the rest of saiEvents created this way have
They can be reset, deleted and inspected exactly like any other event. ProtocolBrowser -> sai-web: sai-web -> browser (answered locally from the databases):
Browser -> sai-web -> sai-server: sai-server announces the new event with the usual |