github

Deploy a granted GitHub repository on an owned node

Picker row → token push → deploy_git → auto_deploy (D-GH-C6).

The order is the load-bearing part. The repository is added to the node's picker first, in its own committed transaction, so the token the pusher mints next covers it; the push is synchronous — the route waits for the daemon to hold the token — because the clone that follows resolves ${github.installation} on the node and would fail with "no token for this repository" a moment earlier. Only then is the daemon asked to clone and register the app, with the clone URL built here from the granted owner/name (never from the request's spelling) and the reference name rather than a credential. auto_deploy is written last, and a failure there is reported in the view rather than raised: the app exists by then.

A daemon without the token route (pre-P33) cannot resolve the reference at all, so that is a 409 naming the upgrade rather than a clone that fails with a hint about secrets. Inactive or suspended accounts are refused with ENTITLEMENT_REQUIRED (403).

post/api/github/nodes/{node_id}/deploy

Request

  • Base URL: https://app.nerdit.ai (the document declares no server; this is the origin it was published from)
  • URL: https://app.nerdit.ai/api/github/nodes/{node_id}/deploy
  • Auth: none declared

Path parameters

node_idstring uuid required

Request body

repostring required
namestring nullable
refstring nullable
auto_deployboolean
portinteger nullable
project_idstring nullable
servicestring nullable

Response

Successful Response

node_idstring uuid required
service_namestring required
project_idstring nullable
installation_idinteger required
repo_full_namestring required
refstring nullable required
auto_deployboolean required
auto_deploy_appliedboolean required
pickedboolean required
token'applied' | 'unchanged' required
summaryobject nullable required
hintsstring[] required

Changes

No recorded changes to this operation across all 1 revision of this API.