Skip to content
Phil Beauvoir edited this page Mar 21, 2019 · 16 revisions

SSH

Version 0.5.0 of the collaboration plug-in supports SSH authentication as well as username/password authentication for HTTPS connections.

This requires the user to do some manual configuration outside of Archi.

SSH or HTTPS?

Please read this - https://help.github.com/en/articles/which-remote-url-should-i-use

Setting up private and public keys

Here's an example of how to create SSH key files and add a public key to GitHub.

This example uses Windows and a Git Bash terminal.

Create the files:

  1. ssh-keygen -t rsa -b 4096 -m PEM -C "yourGitHubEmailAddress" - Ensure you use the -m PEM option!
  2. Enter a file name into which to save the key (the default is id_rsa but you might want a different one)
  3. Enter a pass-phrase when prompted

Add to GitHub:

  1. Assuming the file name you chose was id_rsa, the public key file will be id_rsa.pub. Copy the public key to clipboard with clip < ~/.ssh/id_rsa.pub(change the *.pub file name if you chose a different one.)
  2. At GitHub create a new key at https://github.com/settings/keys and paste the contents of the clipboard

For more information see the following:

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#platform-windows

https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

Setting the key file in Archi

In Archi's Preferences, select the "Collaboration" tab and, in the "SSH Authentication" section set the SSH key file (in the example above this is ~/.ssh/id_rsa) and if the key file requires an identity password enter this too.

Using SSH in Archi

Once SSH has been configured, it's simply a case of using the appropriate URL when setting up a repository based model in the Collaboration Workspace. For example, when cloning a model or adding a model to the workspace, simply enter the URL of the online repository. Unlike HTTPS connections no user name or password is required as this is stored in the SSH key file.

Typical SSH URLs are like the following:

[email protected]:archimatetool/archi-modelrepository-plugin.git

[email protected]:User/project.git

ssh://[email protected]