taubyte-push-build-verify
Push Build Verify
Steps
-
Context: Run
tau --json current. If the user asked for a new project in this session, confirmProjectmatches that name (seetaubyte-orchestrator→ New project hard gate) before any push or import. -
Pre-push build/runtime config check:
- Validate
.taubyte/build.shand.taubyte/config.yamlfor changed functions/websites/libraries. - Ensure required env vars are declared when server-side config is needed.
- For Go functions, confirm sources follow
taubyte-go-sdk-constraints:empty.goat function root only (no manuallib/, no hand-writtenmain.go). Optional local WASM check:taubyte/go-wasiDocker recipe in that skill.
- Validate
-
If website/library was newly created in this workflow, import first:
tau import website --name <website> tau import library --name <library>- Run only for resources that exist and are relevant to this workflow.
-
Push project config:
tau push project --config-only --message "<message>" -
Wait for the Config build to finish (required):
Website/library pushes can depend on resources being present in config. After a config push, do not push website/library code until the latest Config build is ✔ success (or fails).
# poll until the latest Config row shows ✔ (success) or × (failed) tau query builds --since 1h # if failed, inspect logs and fix config before continuing tau query logs --jid <config_job_id> -
Check jobs/logs (capture IDs/diagnosis in context log):
tau query builds --since 1h tau query logs --jid <job_id> -
Push project code:
tau push project --code-only --message "<message>" -
Website/library repositories (only after config build success):
- Preferred:
tau push website --name <website> --message "<message>" tau push library --name <library> --message "<message>" - Exception-only fallback for website/library repos:
git add . git commit -m "<message>" git push origin main
- Preferred:
-
Re-check builds/logs and update context log.
Push policy guardrails
- For project config/code (
tau push project), never bypass failures with git; fix tau/root cause first. - Git fallback is allowed only for website/library repo-local push path when tau website/library push is unavailable or unsupported.
- If git fallback is used, record reason in context log.
- Always record relevant build/job IDs and latest log diagnosis in context log after checks.
More from taubyte/skills
verifying-taubyte-functions
Verifies a Taubyte Go function locally via the `taubyte/go-wasi` Docker recipe (preferred over `tau build`, with tmpfs+bind-mount-ro to avoid root-owned artifacts in the source tree), and verifies a function actually serves on Dream by curling the gateway with the right `Host:` header (plus `/etc/hosts` mapping for `*.localtau`). Use when locally compiling a Go function to WASM, when smoke-testing a function before pushing, or when probing a Dream-hosted HTTP function from the laptop.
12creating-taubyte-resources
Creates Taubyte resources non-interactively via `tau new` for domain, website, library, function, application, database, storage, messaging, and service. Encodes the project-vs-application scope rule, the database `min < max` constraint, the website/library `--generate-repository` + import sequence, and the forbidden `--generated-fqdn-prefix` flag. Use when adding any resource to a Taubyte project's config repo.
12diagnosing-dream-builds
Diagnoses Dream local-cloud builds when `tau list/query builds` is empty or unreliable, by hitting the jobs HTTP endpoint directly (`GET /jobs/<project_id>`, `GET /job/<job_id>`) using the GitHub token from `~/tau.yaml`, then downloading logs with `tau query logs --jid`. Use when Dream builds appear silent, the build table is empty after `dream inject`, or you need raw job ids and logs for a failing build.
11taubyte-resource-creation
Scope-aware resource creation workflow. Uses non-interactive mode by default and references the shared flags catalog.
11taubyte-scope-routing
Routes project-level vs application-scoped work; defaults to a website when a browser UI is logically appropriate; avoids unnecessary applications for simple website/function-only tasks unless needed.
11understanding-taubyte-architecture
Explains the Taubyte mental model — `tau` CLI vs `dream` local cloud, remote-vs-local cloud types, GitHub as the single source of truth, and the config/code/website/library repo layout that drives builds. Use when the user asks how Taubyte fits together, why pushes don't show up, what repos are needed, or whether to use Dream or a remote cloud.
11