Environment Variables
The VIPM CLI recognizes several environment variables that control its behavior. These are useful for CI/CD pipelines, automation scripts, and troubleshooting.
CI Environment Detection
VIPM automatically detects CI environments and adjusts its behavior — for example, using longer default timeouts to account for slower CI runners. The following CI systems are detected automatically:
| Variable | CI System |
|---|---|
CI |
Generic CI convention |
CONTINUOUS_INTEGRATION |
Generic CI convention |
GITHUB_ACTIONS |
GitHub Actions |
GITLAB_CI |
GitLab CI |
JENKINS_URL |
Jenkins |
TRAVIS |
Travis CI |
CIRCLECI |
CircleCI |
BUILDKITE |
Buildkite |
DRONE |
Drone |
APPVEYOR |
AppVeyor |
TF_BUILD |
Azure DevOps |
TEAMCITY_VERSION |
TeamCity |
No configuration is needed — if any of these variables are set, VIPM treats the environment as CI.
When a CI environment is detected and VIPM_NONINTERACTIVE is not explicitly set, VIPM automatically enables non-interactive mode: confirmation prompts are auto-accepted and missing required parameters cause immediate errors instead of hanging. See Non-Interactive Mode below.
Non-Interactive Mode
VIPM_NONINTERACTIVE
Disables all interactive prompts. Confirmation prompts are auto-accepted and missing required parameters cause immediate errors instead of blocking on stdin. This prevents commands from hanging in headless environments.
Auto-enabled in CI — when a CI environment is detected (see table above) and VIPM_NONINTERACTIVE is not explicitly set, non-interactive mode activates automatically. Set VIPM_NONINTERACTIVE=0 to override this and restore interactive behavior (useful for debugging in CI).
# Docker — no prompts at all
export VIPM_NONINTERACTIVE=1
vipm install project.vipc
# CI — auto-detected, no configuration needed
vipm install project.vipc
# Override CI detection for debugging
VIPM_NONINTERACTIVE=0 vipm install project.vipc
| Value | Behavior |
|---|---|
1, true, yes (any truthy value) |
Non-interactive: auto-confirm + error on missing params |
0, false |
Disabled (overrides CI auto-detection) |
| Empty string | Disabled (a warning is logged) |
| Unset + CI detected | Non-interactive (auto-enabled) |
| Unset + no CI | Interactive (default) |
VIPM_ASSUME_YES
Auto-confirms confirmation prompts only (e.g., "Install 5 packages?") without requiring the --yes / -y flag on each command. Unlike VIPM_NONINTERACTIVE, commands with missing required parameters will still prompt for input.
export VIPM_ASSUME_YES=1
vipm install project.vipc # no confirmation prompt
vipm uninstall oglib_boolean # no confirmation prompt
| Value | Behavior |
|---|---|
1, true, yes (any truthy value) |
Auto-confirm all prompts |
0, false |
Disabled (prompts as normal) |
| Empty string | Disabled (a warning is logged) |
Alternatively, use the --yes / -y flag on individual commands:
Precedence
When multiple settings apply, VIPM uses this precedence order:
VIPM_NONINTERACTIVE=1— non-interactive modeVIPM_NONINTERACTIVE=0— interactive (overrides CI detection)- CI detected (if
VIPM_NONINTERACTIVEunset) — non-interactive mode VIPM_ASSUME_YES=1— auto-confirm only (parameter prompts still work)--yesflag — auto-confirm for that command- Default — fully interactive
Timeouts
VIPM_TIMEOUT
Overrides the default operation timeout (in seconds). When set, this takes precedence over the --timeout flag and any CI-adjusted defaults.
Debugging
VIPM_DEBUG
Enables verbose debug output for troubleshooting.
Output
NO_COLOR
Disables colored output, following the no-color.org standard. Equivalent to --color-mode never.
SOURCE_DATE_EPOCH
When set, VIPM uses this Unix timestamp for timestamps in structured output instead of the current time. This supports reproducible builds.
Edition
VIPM_COMMUNITY_EDITION
Forces VIPM to operate in Community Edition mode, regardless of activation status.
Related Resources
- CLI Command Reference — command flags and options
- Docker and Containers — container-specific environment setup
- GitHub Actions and CI/CD — CI workflow examples
Need Help?
- Report issues on GitHub
- Join our community on Discord
- Check the Support page for additional resources