← All tools

Tatsh/wiswa

Popularity 65 Updated Development & Build

A highly opinionated way to generate and maintain projects with Jsonnet.

githubauto-collected

Installation

A directly usable install command is not verified yet. Check the project documentation or releases.

wiswa

A highly opinionated way to generate projects with Jsonnet.

Installation

We recommend a global install so wiswa is on your PATH from any working directory:

uv tool install wiswa

Or with pipx:

pipx install wiswa

If you prefer not to install globally, add Wiswa as a development dependency of your project—for example uv add --group dev wiswa, or list wiswa under dependency-groups.dev in pyproject.toml and install inside the project virtual environment with your usual workflow.

Usage

Add -d to show debug logs.

Usage: wiswa [OPTIONS] [FILE]

  Entry point for the Wiswa CLI.

Options:
  --cache-time INTEGER            Cache expiry time in seconds.  [default:
                                  600]
  -d, --debug                     Enable debug output.
  -J, --jpath TEXT                Add a directory to the Jsonnet search path
                                  (only used when evaluating settings).
  --no-cache                      Disable HTTP response caching.
  -o, --output-dir DIRECTORY      Output directory for generated files.

--skip-jsonnet Skip project.jsonnet manifests; settings merge still runs. --skip-postprocess Skip post-processing steps. --skip-remote Skip configuring the remote Git host (GitHub or GitLab). --skip-static Skip copying static files. --skip-templates Skip Jinja2 template evaluation. --skip-yarn Skip Yarn download. -h, --help Show this message and exit.


## Remote API tokens (GitHub and GitLab)

When Wiswa configures the remote (`wiswa` without `--skip-remote`), it calls the GitHub or GitLab
API using a **personal access token**. Tokens are read from the environment when supported, or from
the system keyring. Service names include the **repository hostname** so different hosts (for
example GitHub.com, GitHub Enterprise, or self-managed GitLab) keep separate credentials.

Keyring entries use the usual **service name** and **username** fields (for example as shown by
`secret-tool` on Linux or Keychain Access on macOS). The **username** is normally your OS login
name (`whoami`).
  • Service wiswa-github:<hostname, username your OS user. The hostname is taken from

repositoryuri (for example github.com for https://github.com/org/repo).

Example (hostname github.com, OS user alice):

python -m keyring set 'wiswa-github:github.com' alice
# paste the token at the prompt

GitLab