02. CLI commands - intersystems/ipm GitHub Wiki
Available commands:
- arrange
- compile
- config
- default-modifiers
- enable
- exec
- generate
- help
- import
- init
- install
- list-dependents
- list-installed
- load
- makedeployed
- module-action
- module-version
- namespace
- orphans
- package
- publish
- quit
- reinstall
- reload
- repo
- run-from-file
- search
- test
- uninstall
- unmap
- unpublish
- update
- verify
- version
Rearranges the resources in a module manifest to follow the standard format. Must either specify a module by name or use the -all flag.
Command: arrange [flags] [<module>]
Arguments:
- 
module
 Name of module to rearrange
Flags:
- 
-all
 Rearrange all modules loaded in development mode (rather than just the current one)
Examples:
- 
arrange my-module
 Arranges module calledmy-module
- 
arrange -all
 Arranges all modules
This command is an alias for module-action module-name compile
Command: compile [flags] <module>
Arguments:
- 
module
 Name of module on which to perform compile action
Flags:
- 
-only, -o
 Only runs the specified phase (compile), rather than also running predecessors.
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
Examples:
- 
compile my-module
 Compiles module calledmy-module
- 
compile -o -v my-module
 Runs only the compile phase for modulemy-moduleand produces verbose output
Update IPM settings. The setting is a key-value pair.
Command: config <action> [<key> [<value>]]
Arguments:
- 
action
 One of settings actions: list, get, set, delete
- 
key
 Setting key
- 
value
 Setting value
Examples:
- 
config set analytics 0
 Disable collecting analytics data
 (Note: this may prevent an issue with long hangs at the end ofzpm installwith%objlasterror= "ERROR #6059: Unable to open TCP/IP socket to server www.google-analytics.com:80")
- 
config set analytics 1
 Enable collecting analytics data
- 
config list
 List all settings
- 
config get analytics
 Get value for analytics key
- 
config delete analytics
 Reset to default value for analytics key
Manages default modifiers to use for all package manager commands in the current namespace.
Command: default-modifiers [flags]
Flags:
- 
-set
 Set the default modifiers to the provided modifiers. Note: this just appends to existing modifiers. DOES NOT delete any defaults.
- 
-get
 Prints the default modifiers to the current device.
- 
-delete
 Deletes all registered default modifiers.
Examples:
- 
default-modifiers -set -DNoTransaction=1 -DUpdateSnapshots=1
 Set custom modifiers "-DNoTransaction=1" and "-DUpdateSnapshots=1" with every package manager command. Note: modifiers starting with the prefix "D" are put into the "data" subscript of the command array.
- 
default-modifiers -get
 Get currently set custom modifiers.
- 
default-modifiers -delete
 Delete currently set custom modifiers.
Enables IPM in other namespaces from a namespace in which IPM is already installed.
First IPM version with this command: 0.9.0
Command: enable [flags]
Flags:
- 
-version, -v <value>
 A specific version of IPM can be provided. If not specified, the latest version from the registry will be installed (hence is not required if quiet flag is set).
- 
-namespaces, -ns <value>
 Comma-separated namespaces in which IPM needs to be enabled.
- 
-globally
 Will install IPM in all non-%SYS explicit namespaces that currently do not have IPM installed. By default, this modifier is not set and will not install globally.
- 
-local-only
 If specified, only local artifacts will be used for installation. By default, this modifier is not set and will not limit to local artifacts.
- 
-allow-upgrade
 If specified, will also check for IPM version in specified namespaces and upgrade if version is lower than the target version. By deafult, this modifier is not set and will not allow upgrade.
- 
-map, -m
 If specified, will map IPM code from the current namespace-default code database rather than installing a separate copy.
- 
-repos,-r
 If specified, will map repository settings across namespaces. Must be used together with -map.
- 
-remote
 If specified, will use fetch IPM versions from this remote repository. If this is omitted and multiple remote repositories are present, an error will occur.
- 
-quiet, -q
 Quiet mode. By default, this modifier is not set and will display the contents onto the terminal/caller command line.
- 
preview, -p
 Preview what will be changed without actually making the changes.
- 
community
 If specified, will reset repository to the community repository and map IPM to all namespaces along with the repository settings. This is functionaly equivalent torepo -delete-all,repo -reset-defaults, andenable -map -repos -globally. With this modifier, all other modifiers will be ignored.
Examples:
- 
enable -globally -map
 Installs IPM in all explicit namespaces (including %SYS) by adding mappings to the current namespace's default routine database.
- 
enable -v 1.3.4 -q -ns NS1,NS2,NS3
 Installs IPM version 1.3.4 quietly in namespaces: NS1, NS2, NS3.
- 
enable -globally
 Installs IPM in all non-%SYS explicit namespaces, with version selected later in terminal prompt menu.
- 
enable -v latest -globallyGets the latest version of IPM from the registry server, and install it in all non-%SYS explicit namespaces.
- 
enable -v latest -allow-upgrade NS1,NS2,NS3Installs or upgrade IPM to latest IPM version in namespaces: NS1, NS2, NS3.
Executes the provided ObjectScript expression.
Command: exec <expression>
Alias: cos
Arguments:
- 
expression
 ObjectScript expression(s) to execute
Examples:
- 
exec set $Namespace = "MYAPP"
 Run the ObjectScript expression to set the namespace to MYAPP
- 
exec write !,"Hello world!"
 Run the ObjectScript expression to print out the stringHello world!
Generates module.xml
Command: generate [flags] [<path>]
Alias: gen
Flags:
- 
-template, -t
 Generates module.xml template in the specified folder
- 
-author, -a
 Request information about the author
- 
-path
 Directory on the local filesystem, containing a file named module.xml
- 
-export
 Export resource in path
Arguments:
- 
path
 Directory on the local filesystem, where the module.xml file will be created
Examples:
- 
generate
 Generates module.xml for your module in interactive mode
- 
generate -t /my/path
 Generates template in the specified folder /my/path
Displays help information for the shell or a particular command
Command: help [flags] [<command>]
Alias: ?
Flags:
- 
-markdown, -,
 Print detail in markdown format (for easy transfer to external documentation)
- 
-verbose, -v
 Show full detail
Arguments:
- 
command
 Command for which help information should be displayed
Examples:
- 
help -v install
 Display full detail help information for the command install
Imports classes from a file or file(s), reexporting to source control if needed.
Command: import [flags] <source>
Arguments:
- 
source
 File or directory to import
Flags:
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-norecurse
 If importing a directory, do not recurse (default is to load directories recursively)
- 
-nocompile
 Skip compiling imported classes (default is to compile them)
Examples
- 
import C:\Temp\MyExport.xml
 Import and compile the class or classes from the given file
- 
import C:\Temp\MyFlatExportDir\ -norecurse -nocompile
 Import the classes from the given directory, located at its root level only. Classes are loaded but not compiled.
Configures new namespace for use of package manager (interactive). This sets up the local cache and allows for configuration of studio extensions for source control and the package manager itself. In the case of Perforce-based source control, prompts are included for username, password, Perforce workspace, and a few other settings.
Command: init [flags]
Alias: initialize
Flags:
- 
-noprompt, -quiet, -q
 If specified, no prompts will be shown.
- 
-zpm, -cli
 If specified, the zpm command will be configured.
- 
-extension, -ext <value>
 Generic extension (e.g., extension class for source control) to configure for the current namespace
- 
-menuextension, -menuext <value>
 Server menu extension (Package Manager extension for server menus such as Studio, vscode menu, etc.) to configure for the current namespace
Installs a module available in a configured repository
Command: install [flags] [<registry-name>/]<module> [<version>]
Flags:
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-keywords <value>, -k
 Searches for modules matching some set of keywords.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-latest, -l
 Installs the latest available version of this module without prompting the user.
- 
-prompt, -p
 Prompts user which version to install, if more then one found.
- 
-bypass-py-deps
 Skip installing python dependencies.
- 
-extra-pip-flags
 Extra flags to pass to pip when installing python dependencies. Surround the flags (and values) with quotes if spaces are present. Default flags are;--target \<target\> --python-version \<pyversion\> --only-binary=:all:.
- 
-synchronous
 Load the module in a single process, rather than using the default multi-process loading.
Arguments:
- 
registry-name
 Name of registry to install module from. Userepo -listto see configured registries.
- 
module
 Name of module to install
- 
version
 Version (or version expression) of module to install; defaults to the latest available if unspecified.
Examples:
- 
install restforms2
 Installs the most recent version of restforms2 available in any configured repository in the current namespace.
- 
install -bypass-py-deps HS.JSON
 Installs HS.JSON without installing python dependencies.
- 
install -extra-pip-flags "--timeout 30" HS.JSON
 Installs HS.JSON but set pip timeout to 30 seconds.
- 
install -env /path/to/env1.json;/path/to/env2.json example-package
 Installs example-package using the /path/to/env1.json and /path/to/env2.json as the install time configuration.
Lists modules dependent on the specified module
Command: list-dependents [flags] <module> [<version>]
Alias: dependents
Flags:
- 
-repos <value>, -r
 Comma-separated list of repository names to search in. If unspecified, the version of the module in the current namespace will be used instead.
- 
-tree, -t
 If specified, show as a tree (rather than a flattened list)
Arguments:
- 
module
 Name of module for which dependent modules will be found
- 
version
 Version of the module for which dependent modules will be found (in all configured repositories)
Examples:
- 
list-dependents HS.JSON
 Lists all currently-installed modules dependent on the currently-installed 'HS.JSON' version
- 
list-dependents -repos AppModules HS.JSON
 Lists all modules in the 'AppModules' repository dependent on all 'HS.JSON' versions.
- 
dependents -t -r AppModules HS.JSON 0.0.1+snapshot
 Lists all modules in the 'AppModules' repository dependent on 'HS.JSON' version '0.0.1+snapshot', as a tree.
Lists modules installed in the current namespace
Command: list-installed [flags] [<searchString>]
Alias: list
Flags
- 
-tree, -t
 If specified, show dependency tree for installed modules
- 
-description, -d
 If specified, show dependency tree for installed modules.
- 
showsource, -ss
 Additional information is displayed for each module.
- 
showtime, -st
 If specified, show the time of last update for each module
- 
showupstream, -su
 If specified, show the latest version for each module in configured repos if it's different than the local version.
- 
repository, -repo
 If specified, only show modules installed that belong to the provided repository.
Arguments:
- 
searchString
 Search string; * can be used.
Examples
- 
list-installed -tree
 Shows all installed modules in tree format.
Loads a module from the specified directory or archive into the current namespace. Dependencies are also loaded automatically, provided that they can be found in repositories configured with the 'repo' command.
Command: load [flags] <path>
Flags:
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-branch, -b
 The name of the branch in the repository.
- 
-bypass-py-deps
 Skip installing python dependencies.
- 
-extra-pip-flags
 Extra flags to pass to pip when installing python dependencies. Surround the flags (and values) with quotes if spaces are present. Default flags are;--target \<target\> --python-version \<pyversion\> --only-binary=:all:.
- 
-synchronous
 Load the module in a single process, rather than using the default multi-process loading.
Arguments:
- 
path
 Directory on the local filesystem, containing a file named module.xml
Examples:
- 
load C:\module\root\path\
- 
load C:\module\root\path\module-0.0.1.tgz
 Loads the module described in C:\module\root\path\module.xml
- 
load -dev -verbose C:\module\root\path\
- 
load -dev -verbose C:\module\root\path\module-0.0.1.tgz
 Loads the module described in C:\module\root\path\module.xml in developer mode and with verbose output.
- 
load https://github.com/user/repository.git -branch feature-1 
 Loads the module in branch feature-1 from remote repository https://github.com/user/repository.git.
- 
load -bypass-py-deps C:\module\root\path 
 
 Loads the module described in C:\module\root\path\module.xml without installing python dependencies
*load -extra-pip-flags "--timeout 30" C:\module\root\path
Loads the module described in C:\module\root\path\module.xml but set pip timeout to 30 seconds
Tarballs:
Tarballs can be downloaded manually from the package page on OpenExchange or from calling the IPM registry REST API using this format:
https://pm.community.intersystems.com/download/<package-name>/-/<package-name>-<package-version>.tgz
e.g. here is the URL for git-source-control:
https://pm.community.intersystems.com/download/git-source-control/-/git-source-control-2.3.0.tgz
This command is an alias for module-action module-name makedeployed
Command: makedeployed [flags] <module>
Arguments
- 
module
 Name of module on which to perform makedeployed actions
Flags:
- 
-only, -o
 Only runs the specified phase (makedeployed), rather than also running predecessors.
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-recurse, -r
 Runs the specified phase (makedeployed) on the module and all of its dependencies.
Performs operations on modules - compiling, running tests, packaging/registering, etc.
module-action <module> <actions> [flags]
You can use this by starting a command with the module name.
<module> <actions> [flags]
Note that flags appear after all actions.
The standard lifecycle phases are:
- 
clean: removes all dependencies that are not required by other installed modules and their resources. Dependencies required by other modules will also be removed if the -DClean.Force=1flag is specified.
- 
initialize: pulls and compiles module source code from the /preloaddirectory
- reload: pulls module source code into the namespace from disk. Does not compile.
- validate: ensures that module API section is up to date, that module resource processor attributes are valid, and that the resources exported to the filesystem (and possible to source control) are consistent with what is in the database.
- compile: compiles all resources within the module.
- activate: performs post-compilation installation/configuration steps.
- makedeployed: deploys resources within the module for which deployment is enabled.
- document: regenerates the API documentation for the module
- test: runs any unit tests associated with the module, in the current namespace.
- package: exports the module's resources and bundles them into a module artifact (.tgz file).
- verify: installs that artifact in a separate namespace, then runs integration tests (if any).
- register: saves that artifact into the current namespace's module cache. This is accessible to other instances configured to look at the current namespace as a module repository.
- publish: saves that artifact to the repository for which deployment is enabled. Currently, there may only be one of these per namespace.
Flags:
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-only, -o
 Only runs the specified phase(s), rather than also running predecessors.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-export-deps
 If specified, controls whether dependencies are exported. If omitted, defaults to the value of the#EXPORTDEPENDENCIESin lifecycle class. This modifier is only used inPackageandPublishlifecycles.
Arguments:
- 
module
 Name of module on which to perform lifecycle actions
- 
actions
 Space-delimited list of module lifecycle phases to run
Examples:
- 
module-action MyModuleName compile
 Compiles the module named "MyModuleName"
- 
MyModuleName clean register
 Performs multiple actions on the module named "MyModuleName"; "clean" deletes all of its dependenices, and "install" will then re-download them, package the module, and register it in the current namespace's module cache.
- 
MyUIModule compile -v -Dmyparam=42
 Compiles the module named MyUIModule with verbose output and pParams("myparam") (passed to all lifecycle phases) set to 42.
Updates the version of the module in the current namespace.
Command: module-version [flags] <module> [<version>]
Flags:
- 
prerelease
 Set the prerelease to a specific value.
- 
build
 Set the build to a specific value.
- 
force
 Permit the version to be downgraded. By default, trying to downgrade the version will fail.
- 
quiet
 Suppress output (except for errors).
Arguments:
- 
module
 Name of the module to update the version for.
- 
version
 Either a valid SemVer string, or 'major', 'minor', 'patch'. If it's 'major', 'minor', or 'patch', will bump the corresponding part of SemVer.
Examples
- 
module-version HS.JSON 1.2.3
 Sets the version of the module HS.JSON to 1.2.3
- 
module-version HS.JSON major
 Bump the major version the module HS.JSON. If current version is 1.2.3, the new version will be 2.0.0
- 
module-version HS.JSON minor -prerelease alpha -build xyz
 Bump the minor version and set prerelease to 'alpha' and build to 'xyz'. If current version is 1.2.3, the new version will be 1.3.0-alpha+xyz
- 
module-version HS.JSON 1.2.3 -force
 Downgrade the version to 1.2.3. If the current version is 1.3.0, this will still work because the force flag is set.
See list modules in namespace and go to the namespace
Command: namespace [flags] [<name>]
Alias: zn
Arguments:
- 
name
 Name of namespace, * or context name*
Flags:
- 
-description, -d
 Shows description for each module.
Examples
- 
zn *
 Show all modules in all namespaces
- 
zn sql*
 Show all modules in namespaces by context
Lists resources in the current namespace's default code database that are not part of any module.
Command: orphans [flags]
Flags:
- 
-type <value>, -t
 Type (e.g., extension) of resource to show; if unspecified, all types are included.
Examples:
- 
orphans -type CLS
 Lists orphan files with extension CLS
This command is an alias for module-action module-name package
Command: package [flags] <module>
Arguments
- 
module
 Name of module on which to perform package actions
Flags:
- 
-only, -o
 Only runs the specified phase (package), rather than also running predecessors.
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-path, -p <value>
 Use specified path to export package.
- 
-export-deps
 If specified, controls whether dependencies are exported. If omitted, defaults to the value of the#EXPORTDEPENDENCIESin lifecycle class.
- 
-export-python-deps
 If specified, exports Python dependencies. If omitted, defaults to false.
This command is an alias for module-action module-name publish
Command: publish [flags] <module>
Arguments:
- 
module
 Name of module on which to perform publish actions
Flags:
- 
-only, -o
 Only runs the specified phase (publish), rather than also running predecessors.
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-use-external-name
 Publish the package under the <ExternalName> of the package. If ExternalName is unspecified or illegal, an error will be thrown.
Exits the package manager shell
Command: quit
Aliases: q, exit
Reinstalls an already-installed module from the latest version available in a configured repository. By default, updates dependencies of that module as well.
Command: reinstall [flags] <module>
Arguments:
- 
module: Name of module to reinstall
Flags:
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
- 
-shallow, -s
 Suppresses updating of dependencies with '+snapshot' versions.
- 
-bypass-py-deps
 Skip installing python dependencies.
- 
-extra-pip-flags
 Extra flags to pass to pip when installing python dependencies. Surround the flags (and values) with quotes if spaces are present. Default flags are;--target \<target\> --python-version \<pyversion\> --only-binary=:all:.
Examples:
- 
reinstall -dev ZHSLIB
 Reinstalls the currently-installed version of the ZHSLIB module, in development mode
This command is an alias for module-action module-name reload
Command: reload [flags] <module>
Arguments:
- 
module
 Name of module on which to perform reload action
Flags:
- 
-only, -o
 Only runs the specified phase (reload), rather than also running predecessors.
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that ^Sources will be configured for resources in the module, and installer methods will be called with the dev mode flag set.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
Configures the current namespace to search for modules on a remote server or on the local filesystem.
Command: repo [flags]
Alias: repository
Flags:
- 
-app <value>
 When enabling a namespace to serve as a remote repository, specifies the web application to allow web service access.
- 
-delete
 Deletes the current namespace's reference to the named repository
- 
-delete-all
 Deletes all repositories (possibly subject to a type filter: -f, -r, -l)
- 
-depth <value>, -d
 For filesystem repositories, specifies the depth (number of folders underneath the root) to search for files named module.xml
- 
-filesystem, -f, -fs
 Create/update a filesystem repository
- 
-list
 Lists all repositories (possibly subject to a type filter: -f, -r, -l)
- 
-list-modules
 List modules available in the specified repository (-n[ame]), or in all configured repositories if no repository was specified.
- 
-local, -l
 Create/update the local namespace cache
- 
-name <value>, -n
 Namespace-unique name for the module
- 
-password <value>, -pass
 For remote repositories, specifies the password to use when connecting.
- 
-password-stdin, -pass-stdin
 For HTTP(s) repositories, specifies the password to use when connecting, but prompt user in secret input terminal mode.
- 
-path <value>, -p
 For filesystem repositories, specifies the path to the root directory
- 
-prereleases <0/1>, -pre
 For any repository, specifies that it should be used to look for prerelease software
- 
-publish <0/1>
 When configuring a remote repository, specifies that publishing of packages to the repository is allowed. When configuring the current namespace with -enable, specifies that publishing is also enabled.
- 
-remote, -r
 Create/update a remote server repository
- 
-reset-defaults
 Reset to default remote repository
- 
-snapshots <0/1>, -s
 For any repository, specifies that it should be used to look for snapshot builds (i.e., those with a semantic version ending in '+snapshot', indicating a 'latest' build of a particular version).
- 
-type <value>, -t
 Subclass of %ZPM.PackageManager.Client.ServerDefinition to create/modify/delete or implementation of %ZPM.PackageManager.Core.IPackageService or %ZPM.PackageManager.Core.IPublishService to enable/disable
- 
-url <value>
 For remote repositories, specifies the URL for package retrieval web services.
- 
-username <value>, -user
 For remote repositories, specifies the username to use when connecting.
Examples:
- 
repo -list
 List all repositories
- 
repo -delete-all
 Delete all repositories
- 
repo -name LocalFiles -snapshots 1 -fs -depth 2 -path C:\MyWorkspace\RootModuleDir\
 Create a repository pointing to the filesystem named "LocalFiles", accepting snapshots, looking for files named "module.xml" up to 2 directories deep in C:\MyWorkspace\RootModuleDir\
- 
repo -n LocalFiles -delete
 Delete the repository named "LocalFiles"
- 
repo -n AppModules -list-modules
 Lists all modules (and versions) available from the repository named "AppModules"
- 
repo -r -n registry -reset-defaults
 Reset to default registry (pm.community.intersystems.com); it is equivalent to this command:repo -r -n registry -url https://pm.community.intersystems.com/ -user "" -pass ""
Imports either a text file or a JSON file that contains Package Manager Shell commands and runs them sequentially
in the current namespace.
Expected format if the file is a text file (with a .txt extension):
    Each line of the file should contain a single command to be run
Expected format if the file is a JSON file (with a .json extension):
    The file must contain a single array whose items are JSON objects matching the following format:
{
      "command": "command name",
      "parameters": { ... },
      "modifiers": { ... },
      "custom_modifiers": { ... }
}
where each nested object contains key-value pairs. Note that for modifiers that have no value associated with them (such as -verbose), the value of the key-value pair for the modifier is ignored.
Command: run-from-file [flags] <file>
Alias: run
Arguments:
- 
file
 File to import
Flags:
- 
-dry-run, -d
 Does not actually run the commands. Simply displays what would be run.
Examples:
- 
run-from-file C:\Temp\MyCommands.text
 Run the commands present in the text file, whose contents are as follows:
repo -name Test -p4 -path //Users/test/
install -dev TestModule -latest -DNoMapping=1 -DDeploy.Parameter="TESTDEPLOY"
- 
run C:\Temp\MyCommands.json
 Run the commands present in the JSON file, whose contents are as follows:
{
      "commands": [
            {
                  "command": "repo",
                  "modifiers": {
                        "name": "Test",
                        "p4": "",
                        "path": "//Users/test/"
                  }
            },
            {
                  "command": "install",
                  "parameters": {
                        "module": "TestModule"
                  },
                  "modifiers": {
                        "dev": "",
                        "latest": ""
                  },
                  "custom_modifiers": {
                        "NoMapping": 1,
                        "Deploy.Parameter": "TESTDEPLOY"
                  }
            }
      ]
} 
Shows all modules in current registry
Command: search [<searchString>]
Alias: find
Flags:
- 
-show-repo, -r
 Shows github repository for each module.
- 
description, -d
 Shows description for each module.
- 
versions
 Shows all versions for each module.
Arguments
- 
searchString
 Search string; * can be used
Examples:
- 
search
 Shows all modules in current registry
Runs the unit tests for a module that are specified to run in the test phase.
Command: test <module>
Arguments
- 
module
 Name of a module to run tests
Examples
- 
test my-module
 Runs thetestphase tests for my-module
Uninstalls a module currently installed locally. This will be prevented if other modules depend on the named module, unless the -force flag is specified.
Command: uninstall [flags] <module>
Flags:
- 
-all, -a
 Uninstalls all modules installed in the current namespace. Will not uninstall IPM itself.
- 
-force, -f
 If specified, the module will be uninstalled even if other modules depend on it.
- 
-purge
 Purge data from tables during uninstall.
- 
-quiet, -q
 Produces minimal output from the command.
- 
-recurse, -r
 Also recursively uninstall dependencies. By default, will not uninstall dependencies that are also required by other installed modules; the -force flag overrides this.
- 
-verbose, -v
 Produces verbose output from the command.
Arguments
- 
module
 Name of a module to uninstall
Examples
- 
uninstall restforms2
 Uninstalls restforms2 from the current namespace.
Unmap %IPM package and routines in specified namespaces. Will Skip non-mapped namespaces. If repository settings are mapped, will also unmap repository settings.
Command: `unmap [flags]
Flags:
- 
-namespaces, -ns
 Comma-separated namespaces in which IPM mapping needs to be deleted.
- 
-globally, -g
 Will unmap IPM in all explicit namespaces that currently do not have IPM installed.
- 
-quiet, -q
 Quiet mode. By default, this modifier is not set and will display the contents onto the terminal/caller command line.
- 
-repos-only
 If specified, will only unmap repository settings across namespaces. This doesn't affect mapping of IPM packages and routines.
Examples
- 
unmap -ns NS1,NS2,NS3
 Unmap IPM from namespaces NS1, NS2, NS3.
- 
unmap -g
 Unmap IPM from all namespaces.
Delete package from registry
Command: unpublish [flags] <module> <version>
Arguments:
- 
module
 Name of module on which to perform unpublish actions
- 
version
 Version of module on which to perform unpublish actions. Use "all" to delete all versions of the package
Flags:
- 
-quiet, -q
 Produces minimal output from the command.
- 
-verbose, -v
 Produces verbose output from the command.
Examples
- 
unpublish MyModuleName all
 Delete all versions of the package "MyModuleName" from the registry
- 
unpublish MyModuleName 1.0.0
 Delete version "1.0.0" of the package "MyModuleName" from the registry
Updates a module to a newer version. By default, updates to the latest available version. Also runs all of the update steps from the current version to the newer version.
This command is an alias for module-action module-name applyupdatesteps.
Command: update [flags] <module> <version>
Arguments:
- 
module
 Name of module on which to perform update actions
- 
version
 Version (or version expression) of module to update; defaults to the latest available if unspecified. Is ignored if-pathis provided.
Flags:
- 
-dev
 Sets the DeveloperMode flag for the module's lifecycle. Key consequences of this are that^Sourceswill be configured for resources in the module, and installer methods will be called with the-devflag set.
- 
-env, -e
 Semicolon separated paths to the environment files in json format.
- 
-path, -p
 Location of local tarball containing the updated version of the module. Overridesversionparameter if present.
- 
-verbose, -v
 Produces verbose output from the command.
Examples
- 
update HS.JSON 3.0.0
 Updates theHS.JSONmodule from the current version to version3.0.0.
Runs the unit tests for a module that are specified to run in the verify phase.
Command: verify <module>
Arguments
- 
module
 Name of a module to run tests in
Examples
- 
verify my-module
 Runs theverifyphase tests for my-module
Prints the currently-installed package manager and registry version
Command: version
Alias: ver
Examples:
- version