Skip to content

Commit f35d41b

Browse files
authored
Merge pull request #923 from intersystems/doc-upgrade
Document what to do after an IRIS upgrade
2 parents 193574e + 27323a4 commit f35d41b

File tree

1 file changed

+19
-8
lines changed

1 file changed

+19
-8
lines changed

README.md

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ Embedded Git support for InterSystems platforms, supporting unified source contr
3333
3434
### Making available instance-wide via %ALL namespace
3535
36-
To make git-source-control available to all namespaces on an instance without manually installing it in each, you can run:
36+
To make Embedded Git available to all namespaces on an instance without manually installing it in each, you can run:
3737
3838
`do ##class(SourceControl.Git.API).MapEverywhere()`
3939
@@ -49,7 +49,7 @@ For those with less experience using source control, we recommend this [page](/d
4949
5050
### Health Connect Cloud
5151
52-
git-source control is the recommended source control for Health Connect Cloud. [This page](/docs/hcc.md) covers HCC specific usage of git-source-control, including the recommended development workflow, initial setup, and CI/CD pipelining.
52+
Embedded Git is the recommended source control for Health Connect Cloud. [This page](/docs/hcc.md) covers HCC specific usage of Embedded Git, including the recommended development workflow, initial setup, and CI/CD pipelining.
5353
5454
### VSCode
5555
@@ -74,7 +74,7 @@ That said, the same menu items and editor behavior will also work in Studio. The
7474
## Notes
7575
7676
### Menu Options
77-
Documentation for the various git-source-control menu options can be found [here](/docs/menu-items.md).
77+
Documentation for the various Embedded Git menu options can be found [here](/docs/menu-items.md).
7878
7979
### Mapping Configuration
8080
To specify where files should go relative to your repository root, add mappings via the "Settings" menu item. A mapping has three parts:
@@ -101,7 +101,7 @@ A recommended way to implement CI/CD would be to use one of the pre-defined subc
101101
102102
To manually pull the latest code from the current configured branch into an IRIS instance, use the "Git Pull" favorite link that is added to the management portal automatically on installation or via the Settings page "Favorite Namespaces" option.
103103
104-
To use git-source-control as part of automated deployment to a test/production environment with a running IRIS instance, the best approach is to call into the appropriate IRIS namespace to run:
104+
To use Embedded Git as part of automated deployment to a test/production environment with a running IRIS instance, the best approach is to call into the appropriate IRIS namespace to run:
105105
106106
`do ##class(SourceControl.Git.API).Pull(1)`
107107
@@ -134,31 +134,42 @@ If you want to interact with remotes from VSCode/Studio directly (e.g., to push/
134134
For developers to be able to run this extension, they'll need the following privileges:
135135
- the USE privilege on %System_Callout
136136
137-
### Setting up multiple GitHub deploy keys on one machine
137+
#### Setting up multiple GitHub deploy keys on one machine
138138
139139
Assuming you have the local and remote repositories created,
140140
141141
1. Create your key pair using `ssh-keygen`.
142142
2. Add the public key to GitHub.
143-
3. You can try setting remotes with the URL your remote repository provides, but sometimes your firewall might cause issues and refuse the SSH connection. In that case, I've found that changing the remote URL to the following is helpful:
143+
3. You can try setting remotes with the URL your remote repository provides, but sometimes your firewall might cause issues and refuse the SSH connection. In that case, changing the remote URL to the following is helpful:
144144
`ssh://git@ssh.github.com:443/<repo_owner>/<repo_name>.git`
145145
4. Copy the private key into 2 locations
146146
1. `<path to IRIS Instance storage>\mgr\<private key>`
147147
2. `~/.ssh/<private key>`
148148
5. Make sure to set the owner and permissions for the private key correctly. For Windows, go to where the private key is stored in IRIS and edit the owner to be the admin, disable inheritance and remove all access to the key to every user except the admin.
149-
6. In git source control settings, set the path to the private key as the one in IRIS.
149+
6. In the Embedded Git settings, set the path to the private key as the one in IRIS.
150150
7. Change the default `ssh` command in the git config for **your repository** as:
151151
`git config core.sshCommand 'ssh -i ~/.ssh/<private key name>'`
152152
8. Test the refresh button for the remote branches on the WebUI, fetch from the source control menu in Studio or VS Code, and `git fetch` in Git Bash. All 3 should work without any issues.
153153
154-
## Editing files in the Git repository server-side
154+
### Editing files in the Git repository server-side
155155
156156
There are some circumstances where you'll want to edit files in the Git repository on the IRIS server. For example,
157157
- To edit interoperability system default settings for a different environment
158158
- To edit custom configuration files
159159
160160
Embedded Git allows you to edit files in the Git repository server-side through VS Code. Enable the "Define a namespace-level web application " option by running `do ##class(SourceControl.Git.API).Configure()`. This will automatically create a new IRIS web application for editing files with the VS Code ObjectScript extension. Then go to the Embedded Git Web UI and use the "Code Workspace" option to download a VS Code workspace. The workspace will allow you to edit files in the Git repository on the server.
161161
162+
### IRIS Upgrades
163+
If Embedded Git stops working after an upgrade of the InterSystems data platform, one of the following steps may be necessary:
164+
- Recompile custom %SYS classes and routines:
165+
```
166+
set $namespace = "%SYS"
167+
do $system.OBJ.CompileList("%Z*,%z*,Z*,z*,'%ZEN.*,'%ZHS*","up")
168+
```
169+
- Reinstall the package from the InterSystems Package Manager
170+
171+
These steps are documented under [Major Version Post-Installation Tasks](https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cls?KEY=GCI_post#GCI_post_mv).
172+
162173
## Support
163174
164175
If you find a bug or would like to request an enhancement, [report an issue](https://github.com/intersystems/git-source-control/issues/new). If you have a question, post it on the [InterSystems Developer Community](https://community.intersystems.com/) - consider using the "Git" and "Source Control" tags as appropriate.

0 commit comments

Comments
 (0)