product:sync-template

Apply template updates to SPLENT-owned product files without touching developer code.


Usage

splent product:sync-template [<product_name>] [--scripts] [--entrypoints] [--docker] [--dry-run] [--yes]
Argument / Option Description
<product_name> Optional. Product to update. Defaults to the active product (SPLENT_APP).
--scripts Update only scripts/.
--entrypoints Update only entrypoints/.
--docker Update only docker/ files.
--dry-run Show what would change without writing any files.
--yes Skip the confirmation prompt.

Examples

Update all SPLENT-owned files (with confirmation):

splent product:sync-template myapp

Preview changes without applying them:

splent product:sync-template myapp --dry-run

Update only shell scripts:

splent product:sync-template myapp --scripts

Non-interactive (CI/scripts):

splent product:sync-template myapp --yes

Example output

  Files to update (3):

    scripts/00_install_features.sh  (4 line(s) changed)
    scripts/04_handle_migrations.sh  (1 line(s) changed)
    docker/Dockerfile.myapp.dev  (2 line(s) changed)

  Proceed with update? [y/N]: y

  ✔  scripts/00_install_features.sh
  ✔  scripts/04_handle_migrations.sh
  ✔  docker/Dockerfile.myapp.dev

  Done.

Description

Re-renders the current templates and overwrites only the files that have changed. It never touches developer-owned files.

Files that can be updated:

Group Files Flag
scripts/ 10 numbered setup/startup scripts --scripts
entrypoints/ entrypoint.dev.sh, entrypoint.prod.sh --entrypoints
docker/ Dockerfile.{name}.dev/prod, .env.*.example --docker

Never touched:

  • src/{name}/config.py, errors.py, logging.py
  • src/{name}/templates/, src/{name}/static/
  • pyproject.toml, docker-compose.*.yml

Pairs well with

  • product:drift — inspect what has drifted before syncing.
  • feature:sync-template — same workflow for individual features.

Back to top

splent. Distributed by an LGPL license v3. Contact us: drorganvidez@us.es