IPM parameters
An overview of all IPM parameters
The IPM client has a number of main verbs that can be used to interact with the IPMHub and get your project up and running.
Account
Return the current user and the remaining lifetime of the current session.
Examples
ipm account
Required parameters
This command has no required parameters
Optional parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
--version
Returns the version information of the ipm application
Add
Add and download a package directly in the workspace
Syntax
ipm add --package
[--config]
[--folder]
[--strategy]
[--version]
[--workspace]
[--non-interactive]
[--client-secrets]
Examples
Add latest version of package MyPackage to the workspace:
ipm add --package mycompany/MyPackage
Add version 1.2.3 of package MyPackage to the workspace
ipm add --package mycompany/MyPackage --version 1.2.3
Add package MyPackage to the workspace but place it in OtherLocation. This overwrites the default workspace setting set in ipmhub.json
.
ipm add --package mycompanyMyPackage --folder OtherLocation
Add package MyPackage to the workspace with download strategy set to single. This overwrites the default strategy setting set in ipmhub.json
.
ipm add --package mycompanyMyPackage --strategy single
Read the detailed description on all options on how to setup your project with the ipm add command.
Required parameters
--package -p
Specify the package you wish to add.
Optional parameters
--folder -f
Designate an alternative location for placing and downloading the package.
Default: If left empty, it will follow the workspace folder specified in ipmhub.json
.
--strategy -s
Defines the download strategy to use for this package.
Default: If not specified, it will adhere to the setting set in ipmhub.json
.
--namingrule -n
Defines the name placement rule to use for this package.
Default: If not specified, it will adhere to the setting set in ipmhub.json
, which normally is IgnoreOwner
.
--version -v
Define the package version you wish to configure and download.
Default: If not defined it will download the latest version available.
--workspace -w
Specifies the root workspace folder.
Default: If not specified, it defaults to the current directory.
--non-interactive
Requests a non-interactive authentication session by providing a single or multiple client secrets.
--client-secrets
One or more client secrets for non-interactive authentication. Multiple secrets should be separated by spaces.
Default: If not specified and non-interactive authentication is requested, IPM will check the `IPM_CLIENT_SECRETS`` environment variable.
Global parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Cache
Functionality to maintain the IPM client cache.
Syntax
ipm cache [--clear]
Examples
Clear the cache of the IPM client:
ipm cache --clear
Required parameters
--clear
Clears the cache of the IPM client
Optional parameters
This command has no optional parameters.
Global parameters
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
--version
Returns the version information of the ipm application
Config
Functionality to configure the IPM client.
Syntax
ipm config [--reg]
Examples
Register the IPM client within the current user execution path:
ipm config --reg
Required parameters
--reg
Register the IPM client within the current user execution path.
Optional parameters
This command has no optional parameters.
Global parameters
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
--version
Returns the version information of the ipm application
Help
Calls the help menu for the context you are in.
Syntax
ipm --help
Examples
Shows the help for all main verbs:
ipm --help
Shows the help for the sync verb:
ipm sync --help
Info
Retrieve detailed information about a package, including it’s publisher, type, description and release notes.
Syntax
ipm info --package mycompany/myPackage [--version]
Examples
Get information for the package named MyPackage:
ipm info --package mycompany/MyPackage
Get information for a specific version of the package named MyPackage.
ipm info --package mycompany/MyPackage --version 1.2.3
Required parameters
--package -p
Specify the package you wish to get information from.
Optional parameters
--version -v
Define the version you wish to get information from.
Default: If not defined it will request information about the latest version of the package.
--non-interactive
Requests a non-interactive authentication session by providing a single or multiple client secrets.
--client-secrets
One or more client secrets for non-interactive authentication. Multiple secrets should be separated by spaces.
Default: If not specified and non-interactive authentication is requested, IPM will check the IPM_CLIENT_SECRETS
environment variable.
Global parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Init
Initializes a local workspace.
Syntax
ipm init [--workspace]
[--config]
Examples
Initialize the current directory:
ipm init
Initialize another folder:
ipm init --workspace ./workspace
Required parameters
This command has no required parameters
Optional parameters
--workspace -w
Specifies the directory to initialize. If not specified, it defaults to the current directory.
Global parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the logfile. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
--version
Returns the version information of the ipm application
Common messages
If the directory is already initalized you see the following message.
The workspace '/home/user/workspace' is already initialized.
List
Lists packages you own or have given access to by an organization. You need to be authenticated.
Syntax
ipm list [--pattern ]
Examples
List all owned packages or packages from organizations that you access to:
ipm list
List owned packages or packages from organizations that you access, starting with “virtual”:
ipm list -p virtual\*
Required parameters
This command has no required parameters.
Optional parameters
--pattern -p
A search pattern to look for. You can use wildcards ‘*’ to make your search query more generic. The pattern should have at least 3 characters
(wildcards excluded).
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Login
Authenticate IPM with IPMHub
Syntax
ipm login
Required parameters
This command has no required parameters.
Optional parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Logout
Logout the IPM client
Syntax
ipm logout [--force]
Examples
Force logout:
ipm logout --force
Required parameters
This command has no required parameters.
Optional parameters
--force
Forces the logout action, thus no user interaction is needed.
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Publish
Publishes a new version of a package to IPMHub
Syntax
ipm publish --package
[--folder]
[--version]
[--non-interactive]
[--client-secrets]
Required parameters
--folder -f
The folder containing the code that needs to be published.
--package -p
The full package name including the owner of the package.
--version -v
The new version number of the package.
--non-interactive
Requests a non-interactive authentication session by providing a single or multiple client secrets.
--client-secrets
One or more client secrets for non-interactive authentication. Multiple secrets should be separated by spaces.
Default: If not specified and non-interactive authentication is requested, IPM will check the IPM_CLIENT_SECRETS
environment variable.
Examples
Publish version 1.2.3 of package hello-word owned by ipmhub with the contents of the current directory:
ipm publish --package ipmhub/hello-world -v 1.2.3 -f ./
Search
Search public available and hybrid packages within IPMHub
Syntax
ipm search [--pattern ]
Examples
Search all packages starting with “virtual”:
ipm search -p virtual\*
Required parameters
--pattern -p
A search pattern. Wildcards are allowed (*). The pattern has a minimum of 3 chars including wildcards.
Optional parameters
This command has no optional parameters.
Global parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Status
Retrieve the status of the workspace
Syntax
ipm status [--package]
[--version]
[--non-interactive]
[--client-secrets]
Examples
Get the status of all packages defined in your workspace:
ipm status
Get the status for a specific package named MyPackage:
ipm info --package mycompany/MyPackage
Required parameters
This command has no required parameters
Optional parameters
--package -p
Specify the package you wish to get the status of.
--non-interactive
Requests a non-interactive authentication session by providing a single or multiple client secrets.
--client-secrets
One or more client secrets for non-interactive authentication. Multiple secrets should be separated by spaces.
Default: If not specified and non-interactive authentication is requested, IPM will check the IPM_CLIENT_SECRETS
environment variable.
Global parameters
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Sync
Synchronizes the workspace as defined in ipmhub.json
Syntax
ipm sync [--package ]
[--mode]
[--workspace]
[--non-interactive]
[--client-secrets]
Examples
Synchronize all packages defined in ipmhub.json:
ipm sync
Synchronize the package with the name MyPackage:
ipm sync --package mycompany/MyPackage
Synchronize the package with the name MyPackage with the mode set to KeepAllChanges
:
ipm sync --package mycompany/MyPackage --mode KeepAllChanges
Required parameters
This command had no required parameters.
Optional parameters
--package -p
Specify the package you wish to synchronize.
--mode -m
Configure the Synchronization mode, valid options are Clean
|KeepChangesOnly
|KeepNewFilesOnly
|KeepAllChanges
Default: KeepAllChanges
--workspace -w
Specifies the directory to synchronize.
Default: If not specified, it defaults to the current directory.
--non-interactive
Requests a non-interactive authentication session by providing a single or multiple client secrets.
--client-secrets
One or more client secrets for non-interactive authentication. Multiple secrets should be separated by spaces.
Default: If not specified and non-interactive authentication is requested, IPM will check the IPM_CLIENT_SECRETS
environment variable.
Global parameters
--config -c
Specifies the filename for the application configuration.
Default: If left empty, the default configuration file will be used.
--help
Displays the help documentation for this verb.
--language
The CLI language to enable translation of parts within the application. If left empty, the default will be used. More information
--loglevel
Minimum level of the log messages that will be written to the log file. Valid options are Trace
| Debug
| Info
| Warn
| Error
| Fatal
. If left empty, the default will be used.
(Default: Error)
Version
Shows the version of the IPM client.
Syntax
ipm version
General
Non-Interactive Authentication
The IPM client supports non-interactive authentication using client secrets. These parameters enable automated processes to authenticate without user interaction.
Required Parameters for Client Secret Authentication
--non-interactive
Enables non-interactive authentication mode. Required when using client secrets.
Optional Parameters for Client Secret Authentication
--client-secrets
One or more client secrets for authentication. Multiple secrets should be separated by spaces.
Default: If not specified, IPM will check the IPM_CLIENT_SECRETS
environment variable.
Examples
Using a single client secret:
ipm add -p mycompany/MyPackage --non-interactive --client-secrets YOUR_SECRET
Using multiple client secrets:
ipm add -p mycompany/MyPackage --non-interactive --client-secrets SECRET1 SECRET2
Using environment variable:
export IPM_CLIENT_SECRETS=YOUR_SECRET
ipm add -p mycompany/MyPackage --non-interactive
Hide CLI banner
To clean up your DevOps environment output, we provide you with an option to hide the IPM banner. This will redude the output of
the IPM CLI to the minimum.
Disable the CLI banner
To disable the banner, just set the environment variable IPMHUBCLI_BANNER_DISABLED
to TRUE
.
Examples
Hide the banner within Windows:
set IPMHUBCLI_BANNER_DISABLED=TRUE
ipm status
Hide the banner within Linux:
export IPMHUBCLI_BANNER_DISABLED=TRUE
ipm status