ignitify
The command line tool for the Ignitify service: create, deploy and run tasks.
Install
You need Node.js 22.13 or newer.
npm install --global ignitify
ignitify --version
In CI, or for one command, pin the version:
npx [email protected] whoami
If the install fails with EACCES, do not use sudo. Install Node.js with a version manager, as the npm guide tells you: https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally
Quick start
ignitify login # sign this machine in
ignitify whoami # show your account, limits and usage
ignitify task:create hello # register a task and write its files
ignitify task:deploy hello # build it on the platform
ignitify task:run hello --wait # run it and print the result
Commands
Every command is <resource>:<verb>. Run ignitify help for the list, and ignitify <command> --help for the flags of one command. The full reference is at https://ignitify.dev/docs/cli (all commands in one table: https://ignitify.dev/docs/cli/all).
| Group | Commands |
|---|---|
| Tasks | task:create, task:list, task:get, task:delete, task:validate, task:pack, task:deploy, task:run |
| Integrations | integration:add |
| Deployments | deployment:list, deployment:get, deployment:logs, deployment:delete |
| Runs | run:list, run:get, run:logs, run:delete, run:cancel |
| VMs | vm:list, vm:get, vm:delete |
| Secrets | secret:set, secret:list, secret:delete |
| Schedules | schedule:list, schedule:cancel |
| Webhooks | hook:create, hook:list, hook:delete, notify:set |
| Account and usage | login, logout, whoami, quota, usage, usage:export, help |
Global flags: --json (one JSON document on stdout), -h, --help, -v, --version. The delete and cancel commands also take -y, --yes (answer yes to the question, for scripts).
Configuration
| Variable | Use |
|---|---|
IGNITIFY_API_KEY | Your API key, for CI. It wins over the saved login; the CLI prints one note when both are present. |
IGNITIFY_TASKS_DIR | The folder that holds your task folders. Default: tasks. |
NO_COLOR | Set to any value to turn colour off. |
In CI, put the API key in a CI secret and give it to the job as IGNITIFY_API_KEY.
Where the key is stored
ignitify login saves the key in $XDG_CONFIG_HOME/ignitify/credentials.json when XDG_CONFIG_HOME is an absolute path, else in ~/.config/ignitify/credentials.json. The folder has mode 0700 and the file has mode 0600. ignitify logout revokes the key and deletes the file.
Exit codes
| Code | Meaning |
|---|---|
| 0 | The command succeeded. |
| 1 | The command failed. The CLI prints the error on stderr. |
| 130 | You pressed Ctrl+C during a wait. |
The code is the same under npx, npm exec and npm run, so a CI step fails when the command fails. In an npm script, use npm run --silent if you do not want npm's own error lines.
Proxy
The CLI uses the proxy settings of Node.js. Set NODE_USE_ENV_PROXY=1 together with HTTPS_PROXY (Node.js 22.21 or newer):
NODE_USE_ENV_PROXY=1 HTTPS_PROXY=http://proxy.example.com:3128 ignitify whoami
Update
npm install --global ignitify@latest
The CLI does not check for updates in the background. When the service needs a newer CLI, the CLI prints a warning on stderr.
Uninstall
ignitify logout
npm uninstall --global ignitify
The CLI keeps no data other than the credentials file, and ignitify logout deletes it.
Platforms
macOS and Linux (WSL included). Windows is not tested.
Privacy
The CLI sends no telemetry. It sends requests to the Ignitify API, and only when you run a command. Each request names the version of the CLI. Two commands also use the public npm registry: integration:add runs npm to download an integration package, and task:validate asks the registry for the latest version of each integration in the task (it skips this check when the registry cannot be reached). ignitify login also sends the name of your computer, or the name you give with --name, as the label of the new key.
Versioning
This package follows semantic versioning. The public surface is: command names, flags, exit codes, the --json output, IGNITIFY_API_KEY, IGNITIFY_TASKS_DIR, the credentials path, and the supported Node.js versions. A change that breaks one of these comes only in a new major version.
Support and security
Send bug reports and security reports to [email protected], or use https://ignitify.dev/contact. Docs: https://ignitify.dev/docs.
Never paste an API key into a report.
Licence
The CLI is free to install, run and read, but it is not open source: see LICENSE for what you may do. The files that commands write into your project are yours to use, change and share (LICENSE section 2). The licences of third-party code in this package are in ignitify-NOTICE.txt.