Account
Setup status
Pilot path
First real site
Sign in to load the guided setup path.
Signed-in user
Operational next steps
- Start with
tsc launch; it initializes the project, completes account setup, and confirms the target before upload. - Use
tsc site registerandtsc env addfor registry changes. - Use
tsc launch,tsc deploy,tsc restore, andtsc sync-filesfor Drupal operations. - Use CI Setup when you need a browser bridge for deploy tokens and provider templates.
Sites
Registry
CLI-first registry
tsc site register --name "Client site" tsc env add --name Production --profile drupal-basic tsc site rename site-abc12345 --name "New name" tsc env rename Production --name Stage
Environments
Deployments
Status and rollback
Support
Tickets
Create ticket
Organisation
Access and members
Create an organisation
Request access
CI setup
Deploy tokens and provider templates
CLI equivalent
tsc deploy-tokens create --environment Production --name "Main branch" tsc ci-template --provider github-actions --environment Production --branch main
Create deploy token
Generate provider template
CLI
Primary workflow
Install and initialise
Install the CLI once in ~/.tsc/client, then initialise each Drupal project with its own .tsc/config.
./tsc install --bin-dir ~/.local/bin cd /path/to/drupal-site tsc launch
Command glossary
install- Installs the client in
~/.tsc/clientand a launcher on PATH. uninstall- Removes the client and launcher while preserving global config and login data.
init- Detects Drupal defaults and writes
.tsc/config. settings- Adds the Drupal environment settings block needed by Docker Compose and hosted deploys.
setup- Optional account-only sign-in, organisation, and SSH-key setup.
version- Prints the global client release version.
update- Updates the globally installed client from the public update feed.
clean- Removes generated local client state; use
--dry-runfirst.
First useful run
cd /path/to/drupal-site tsc launch
Sites
tsc site register --name "Client site" tsc site create --site-name "Client site" --environment Demo tsc site list tsc site show tsc site show site-abc12345 tsc site rename site-abc12345 --name "New name" tsc site deregister site-abc12345
Site terms
- Site
- The top-level registry record. It groups environments, artifacts, deploy tokens, and deployments.
- Site ID
- The stable identifier used by API calls and CI templates, for example
client-site-a1b2c3d4. site register- Creates only the registry entry.
site create- Compatibility path for launch-style creation; it provisions through the hosted workflow.
site deregister- Hides a site from the registry after active environments are removed.
Environments
tsc env add --name Demo --profile demo tsc env add site-abc12345 --name Stage --profile drupal-basic --profile-extra cloudfront tsc env add --domain www.example.com --profile drupal-basic tsc env list tsc env list site-abc12345 tsc env rename Demo --name Stage tsc env remove Stage
Environment terms
- Environment
- A runtime target under a site, such as Demo, Stage, or Production.
- Profile
- The infrastructure shape. Current values are
demoanddrupal-basic. - Profile extra
- An optional capability added to a profile, such as
cloudfront. - Custom domain
- The public hostname for an environment. Supplying
--domaincan also name the environment.
Deploy lifecycle
tsc launch --environment Demo --sql ./site.sql.gz tsc launch --environment Demo --install-profile standard tsc deploy --environment Demo tsc restore --environment Demo --sql ./site.sql.gz tsc sync-files --environment Demo tsc retire --environment Demo tsc destroy --environment Demo
Deploy terms
launch- Bundles the project, uploads artifacts, provisions infrastructure, and deploys the first release.
deploy- Uploads and deploys a new code bundle to an existing environment.
restore- Restores a SQL dump, then runs Drupal post-restore maintenance.
sync-files- Uploads Drupal public files separately from deployable code.
retire- Retires temporary hosted infrastructure.
destroy- Alias for
retire.
Deploy options
--environment NAME- Selects the target environment by display name or ID.
--sql PATH- Uses a specific database dump for launch or restore. Without it, restore uses
DEFAULT_SQL_DUMP. --install-profile PROFILE- Installs a Drupal profile when launching without a database dump.
--no-ssh-keys- Launches without adding registered SSH keys to the instance.
--verbose- Streams hosted output while still writing the local log file.
Artifacts and rollback
tsc online bundle --site-name "Client site" tsc online status --environment Demo tsc online deployments list --environment Demo --json tsc online deployments current --environment Demo tsc online deployments rollback dep-abc123 --environment Demo --yes
Status and URLs
tsc status tsc status arn:aws:states:eu-west-2:123:execution:job tsc url --environment Demo tsc online deployments dashboard --environment Demo --json tsc online artifacts list --site-id site-abc12345 --json
Drupal tools
tsc drush --environment Demo status tsc drush --environment Demo cr tsc drush --environment Demo --ssh-key ~/.ssh/id_ed25519 uli tsc drush-aliases write --environment Demo tsc drush-aliases write --all --output drush/sites/tsc.site.yml
Operations terms
status- Shows the latest hosted job, or one specific Step Functions execution ARN.
url- Prints the public URL for an environment.
drush- Runs Drush against a hosted environment over SSH.
drush-aliases write- Writes local Drush alias YAML for one environment or every environment.
online- Direct hosted API mode for debugging and lower-level automation.
Hosted API mode
online bundle- Creates an uploadable local artifact bundle without starting a deploy.
online launch- Calls the hosted launch API directly.
online deploy- Calls the hosted deploy API directly.
online restore- Calls the hosted restore API directly.
online sync-files- Calls the hosted public-files sync API directly.
online retire- Calls the hosted retire API directly.
online deployments- Lists, shows, summarizes, and rolls back deployment runs.
online artifacts- Lists reusable code bundles for a site.
Local safety checks
tsc settings --check tsc clean --dry-run tsc clean tsc version tsc update --force
Sign-in and keys
tsc login tsc whoami tsc whoami --json tsc keys add ~/.ssh/id_ed25519.pub --label "Laptop" tsc keys list tsc keys list --json tsc logout
Deploy tokens
tsc deploy-tokens create --environment Demo --name "Main branch" tsc deploy-tokens create --site-id site-abc12345 --environment Demo --json tsc deploy-tokens list --environment Demo tsc deploy-tokens revoke token-abc123
CI templates
tsc ci-template --provider github-actions --environment Demo --branch main tsc ci-template --provider gitlab --environment Demo --branch main tsc ci-template --provider bitbucket --environment Demo --branch main tsc ci-template --provider azure-pipelines --environment Demo --branch main tsc ci-template --provider shell --environment Demo --token-secret-name TSC_DEPLOY_TOKEN tsc ci-template --kind shell --environment Demo --output deploy.sh
CI terms
- Deploy token
- A scoped credential for CI systems to deploy one site/environment without a browser sign-in.
- Token secret name
- The CI secret variable name used by generated templates. Default:
TSC_DEPLOY_TOKEN. - Provider
- The CI system template format: GitHub Actions, GitLab, Bitbucket, Azure Pipelines, or shell.
--json- Returns machine-readable output for scripts.
- SSH key
- A public key registered to allow shell and Drush access where the environment supports it.
Site config
Drupal and deployment settings live in .tsc/config. Account and control-plane defaults live in ~/.tsc/config.
APP_SERVICE=php COMPOSE_PROJECT_NAME=client-site COMPOSE_FILE=.tsc/docker-compose.yml DRUSH_BIN=vendor/bin/drush DRUPAL_WEB_ROOT=web DEFAULT_SQL_DUMP=./client-site.sql.gz
Config glossary
APP_SERVICE- Docker Compose service that runs Drupal/PHP commands.
COMPOSE_PROJECT_NAME- Compose project name; also used for local container and volume naming.
COMPOSE_FILE- Compose file path used by local helper scripts.
DRUSH_BIN- Path to Drush inside the Drupal codebase.
DRUPAL_WEB_ROOT- Drupal web root, usually
webordocroot. DEFAULT_SQL_DUMP- Fallback database dump used by launch and restore.
TSC_API_URL- Hosted API endpoint stored globally in
~/.tsc/config.
Hosted runtime config
DEPLOY_USER- SSH user for runtime deployment hosts.
DEPLOY_PATH- Base path used for releases and shared files on the host.
PHP_IMAGE- PHP image used for Drupal runtime containers.
AUTO_BACKUP- Controls pre-deploy backup behaviour.
RUN_COMPOSER_INSTALL- Controls Composer install during deploy flows.
RUN_DB_UPDATES- Controls Drupal database updates during deploy flows.
Environment override
tsc settings adds a Drupal settings block that reads database, hash salt, and trusted host values from environment variables.
tsc settings --check tsc settings
Download latest package
Unpack the bootstrap anywhere, install once, then initialise each Drupal site.
Loading latest release...
Install once, initialise sites
The package installs the global client and launcher; project directories retain only their own .tsc settings and state.
mkdir -p /tmp/tsc-client && cd /tmp/tsc-client tar -xzf ~/Downloads/tsc-client-VERSION.tar.gz --strip-components=1 ./tsc install cd /path/to/drupal-site tsc launch