Skip to content

Commit a2827e9

Browse files
authored
Merge pull request #813 from evshvarov/patch-2
added info how to connect to the Community Registry
2 parents a72460e + c6ced68 commit a2827e9

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

README.md

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,24 +12,34 @@ Helps to install ObjectScript classes and routines, globals, Embedded Python mod
1212

1313
## Installing the InterSystems Package Manager Client:
1414

15-
0. Use one-liner in terminal call or programmatically:
15+
The simplest way to install the latest version of IPM is to run the following ObjectScript snippet.
16+
17+
_In CI/CD scripts, for deterministic behavior, replace `version="latest"` with the specific IPM version desired._
18+
1619
```
1720
s version="latest" s r=##class(%Net.HttpRequest).%New(),r.Server="pm.community.intersystems.com",r.SSLConfiguration="ISC.FeatureTracker.SSL.Config" d r.Get("/packages/zpm/"_version_"/installer"),$system.OBJ.LoadStream(r.HttpResponse.Data,"c")
1821
```
19-
**If you want the legacy behavior of mapping IPM classes, routines, and repository settings to all namespaces, run `zpm "enable -community"` after installing IPM. See `zpm "help enable"` for details.**
20-
**In a CI script, for deterministic behavior, you should replace version="latest" with the IPM version you wish to use.**
2122

22-
OR:
23+
**IPM 0.9.0+ can be installed with different versions and registry settings per namespace, and does not have the [community package registry](https://openexchange.intersystems.com/?zpm=1) enabled by default. If you want the legacy (<=0.7.x) behavior of a system-wide installation and access to community packages in all namespaces, run `zpm "enable -community"` after installing IPM. See `zpm "help enable"` for details.**
24+
25+
To enable the community package registry without the rest of the legacy behavior, run:
26+
27+
```
28+
zpm
29+
repo -r -n registry -url https://pm.community.intersystems.com/ -user "" -pass ""
30+
```
31+
32+
As an alternative installation method, if IRIS does not have access to the internet:
2333

2434
1. Download the [latest version](https://pm.community.intersystems.com/packages/zpm/latest/installer) of zpm from the registry
25-
2. Import the zpm.xml into IRIS and compile via any desired way (Management Portal, Studio or Terminal)
26-
27-
After that you can use PackageManager to install modules from [community repository](https://pm.community.intersystems.com) in any namespace.
35+
2. Import `zpm.xml` into IRIS and compile via any available method (Management Portal, Studio or Terminal - `do $System.OBJ.Load("/path/to/zpm.xml","ck")`)
36+
3. (optional) Run `zpm "enable -community"` to enable instance-wide and with a connection to the [community package registry](https://pm.community.intersystems.com)
37+
4. To verify the installation, ensure that you can run `zpm` in Terminal/`iris session` and get the following:
2838

29-
3. Check if you call a zpm in command line and get the following:
39+
```
3040
USER>zpm
31-
3241
zpm: USER>
42+
```
3343

3444
## InterSystems IRIS / IPM Compatibility Matrix
3545

@@ -41,7 +51,7 @@ zpm: USER>
4151

4252
## Compatibility Notes
4353

44-
With the release of IPM v0.9.0 on Dec 2024, IPM is no longer mapped across namespaces.
54+
With the release of IPM v0.9.0 on December 2024, IPM is no longer mapped across namespaces.
4555
This is an intentional change so that users can have different IPM versions and configurations in different namespaces.
4656
If you install IPM on an instance without the legacy 0.7.x version, IPM is only installed to the current namespace.
4757

0 commit comments

Comments
 (0)