Loading...
Loading...
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.
npx skill4agent add taubyte/skills creating-taubyte-resourcesbootstrapping-taubyte-projects/api/...matchtau --defaults --yes json current| Resource | Scope |
|---|---|
| Project |
| Project |
| Project |
| Project (default) or Application |
| Project (creates the application) |
| Application |
| Application |
| Application |
| Application |
tau --defaults --yes select application --name <app>tau --defaults --yes clear applicationtau --defaults --yes new domain <domain_name> \
--generated-fqdn \
--type auto \
--description "<desc>"<random>.<universe>.localtautau --defaults --yes new domain <domain_name> \
--fqdn <fqdn> \
--type auto \
--description "<desc>"*.gen.<cloud_fqdn>*.gen.<cloud>tau query project <name> --jsonidpython3 -c "s='<cid>'; print(s[-8:])"does not contain last 8 of project idgenerateddomains:--generated-fqdn-prefix--g-prefix--generated-fqdn--fqdntau --defaults --yes new website <site_name> \
--domains <domain_name> \
--paths / \
--template empty \
--generate-repository \
--repository-name tb_code_<project>_<site_name> \
--private \
--no-embed-token \
--branch main
tau --defaults --yes import website <site_name>
tau --defaults --yes list websites--generate-repository--repository-nametb_code_<project>_<site>import website<project>/websites/<repo>/.taubyte/build.sh/out--repository-name <fullname>--repository-id <id>--generate-repositorytau --defaults --yes new library <lib_name> \
--path /libraries/<lib_name> \
--template empty \
--generate-repository \
--repository-name tb_code_<project>_<lib_name> \
--private \
--no-embed-token \
--branch main
tau --defaults --yes import library <lib_name>
tau --defaults --yes list libraries--pathtau --defaults --yes new function <fn_name> \
--type http \
--method GET \
--paths /<path> \
--domains <domain_name> \
--language Go \
--source . \
--memory 64MB \
--timeout 30s \
--call <ExportedHandler> \
--template emptytau --defaults --yes new function ping \
--type http --method GET --paths /ping \
--generate-domain \
--language Go --source . \
--memory 64MB --timeout 1s \
--call ping \
--template ping_pong --use-template--call//export <name>empty.gogo.modlib/main.gotau --defaults --yes new application <app_name> \
--description "<desc>"
tau --defaults --yes select application --name <app_name>
tau --defaults --yes list applicationstau --defaults --yes new database <db_name> \
--match <matcher> \
--min 1 --max 2 \
--size 1GB--min 1 --max 1min(1) cannot be greater than max(1)--min 1 --max 2--matchdatabase.New("<matcher>")/tau --defaults --yes new storage <storage_name> \
--match <matcher> \
--size 1GB \
--bucket Object \
--publictau --defaults --yes new messaging <msg_name> \
--match <channel_match> \
--mqtt --ws<channel_match>pubsub/nodeChannel("<channel_match>")trigger.channel: <channel_match>tau --defaults --yes new service <svc_name> \
--protocol /apiMSYS_NO_PATHCONV=1Resource creation progress:
- [ ] Verify selection (tau --json current)
- [ ] Create domain (project scope)
- [ ] Create website + import (project scope)
- [ ] Create library + import (project scope)
- [ ] Create application
- [ ] Select application
- [ ] Create database / storage / messaging / service
- [ ] Create functions (HTTP at project scope, others at app scope as needed)
- [ ] tau clear application
- [ ] tau push project --config-only --message "..."
- [ ] Wait for config build success before pushing website/library codetau new function ... --source .code/applications/<app>/functions/<fn>/code/<app>/functions/<fn>/applications/.taubyte.../<app>/functions/<fn>.../applications/<app>/functions/<fn>.taubyte/tau clear applicationtau new domain|website|librarymatchdatabase.New("...")pubsubnode.Channel("...")trigger.channel/--generate-repository--repository-name--repository-name--repository-idtau new domaintau delete domaintau query domain--min--maxbootstrapping-taubyte-projectsselecting-taubyte-contextpushing-taubyte-projectsbuilding-taubyte-websitesverifying-taubyte-functions