Access Oscar's file-system remotely from VSCode.
To use VSCode you must be on a Brown compliant network or connected to the VPN. Please install the Brown VPN client before proceeding.
September 10, 2023: Some users have reported issues while connecting to the Oscar VSCode remote extension. This is due to a recent change introduced by VSCode. To address this issue
Ctrl (cmd on Mac) + Shift + P > Remote-SSH: Settings
Disable the Remote.SSH: Use Exec Server option
To use VSCode you will need to be connected to the VPN. Please install the Brown VPN client before proceeding.
Install the Remote Development extension pack for VSCode:
2. Open VSCode settings and uncheck symlink:
Code > Preferences > Settings
File > Preferences > Settings
Search for symlink
and make sure the symlink searching is unchecked
3. Make sure you have set up passwordless SSH authentication to Oscar. If you haven't, please refer to this documentation page.
If you have Windows Subsystem for Linux (WSL) installed in your computer, you need to follow the instructions for Windows (PowerShell).
4. Edit the config
file:
The config
file is located at:
~/.ssh/config
The config
file is located at:
If you have Windows Subsystem for Linux (WSL) installed in your computer, you need to follow the instructions for Windows (PowerShell).
Edit the config
file on your local machine, add the following lines. Replace <username>
with your Oscar username.
September 10, 2023: Some users have reported issues while connecting to the Oscar VSCode remote extension. This is due to a recent change introduced by VSCode. To address this issue
In VSCode, select Remote-SSH: Connect to Host… and after the list populates select ccv-vscode-node
6. Install and set up of VSCode
After a moment, VS Code will connect to the SSH server and set itself up.
After a moment, VS Code will connect to the SSH server and set itself up. You might see the Firewall prompt, please click allow.
Configure VSCode
Important: Please run the following to add a settings.json file to your config. This is because the filewatcher and file searcher (rg) indexes all the files you have access to in your workspace. If you have a large dataset (e.g. machine learning) this can take a lot of resources on the vscode node.
Connect to VSCode first.
You can either create a symlink via the ln
command below,
or manually create /users/$USER/.vscode-server/data/Machine/settings.json
file with following contents
Click the green icon "Open a Remote Window" in the bottom left corner of VSCode Window. Then click "Connect to Host" in the drop down list.
2. Select the ccv-vscode-node
option to connect to Oscar.
If you have an existing virtual environment, proceed to step 2. Otherwise, to create a new virtual environment:
2. Search for Python.VenvPath
as shown in the picture below:
3. VSCode expects you to have multiple virtual environments for each of your different python projects, and it expects you to put them all in the same directory. Pointing to the parent directory lets it scan and find all expected virtual environments, and then you can easily toggle between them in interface.
4. Once you have the virtual environment selected, the debugging capabilities should work.
Accessing VSCode from Non-Brown compliant networks
This guide is only for users connecting from Non-Brown Compliant Networks. 2-FA is mandatory.
Install the Remote Development extension pack for VSCode
Open VSCode settings
On Windows/Linux - File > Preferences > Settings
On macOS - Code > Preferences > Settings
Search for symlink
and make sure the symlink searching is unchecked
3. Under VSCode settings, search for remote ssh timeout and manually enter a timeout value i.e. 50s. It should give you enough time to complete 2-Factor Authentication.
4. Edit the ~/.ssh/config
file on your local machine, add the following lines. Replace <username>
with your Oscar username.
6. In VSCode, select Remote-SSH: Connect to Host… and after the list populates select login-node