{"id":3927,"date":"2021-06-18T13:09:59","date_gmt":"2021-06-18T20:09:59","guid":{"rendered":"https:\/\/salesforcedevops.net\/?p=3927"},"modified":"2021-12-02T09:38:28","modified_gmt":"2021-12-02T16:38:28","slug":"how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development","status":"publish","type":"post","link":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/","title":{"rendered":"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development"},"content":{"rendered":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<span class=\"wpex-responsive-media\"><iframe loading=\"lazy\" title=\"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development\" width=\"980\" height=\"551\" src=\"https:\/\/www.youtube.com\/embed\/vdwM2WOUBuk?feature=oembed\"  allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/span>\n<\/div><\/figure>\n\n\n\n<p class=\"has-drop-cap wp-block-paragraph\">I do my Salesforce coding work from any VS Code-compatible workstation, switching between Mac, Windows and Linux depending on my circumstances. I get this done with a remote server computer, the <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=salesforce.salesforcedx-vscode\">Salesforce VS Code Extension Pack<\/a>, the <a href=\"https:\/\/github.com\/Microsoft\/vscode-remote-release\">VS Code Remote &#8211; SSH<\/a> extension, and the <a href=\"https:\/\/code.visualstudio.com\/docs\/editor\/settings-sync\">VS Code Settings Sync<\/a> feature. This setup makes using SFDX-CLI in a standard Ubuntu Linux environment simple and transparent, which speeds up my daily developer workflow.<\/p>\n\n\n\t\t\t\t<div class=\"wp-block-uagb-table-of-contents uagb-toc__align-left uagb-toc__columns-1  uagb-block-28877f5b      \"\n\t\t\t\t\tdata-scroll= \"1\"\n\t\t\t\t\tdata-offset= \"30\"\n\t\t\t\t\tstyle=\"\"\n\t\t\t\t>\n\t\t\t\t<div class=\"uagb-toc__wrap\">\n\t\t\t\t\t\t<div class=\"uagb-toc__title\">\n\t\t\t\t\t\t\tTable Of Contents\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"uagb-toc__list-wrap \">\n\t\t\t\t\t\t<ol class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#leverage-the-power-of-vs-code-remote-ssh\" class=\"uagb-toc-link__trigger\">Leverage The Power of VS Code Remote &#8211; SSH<\/a><ul class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#key-benefits-for-the-enterprise\" class=\"uagb-toc-link__trigger\">Key Benefits for the Enterprise<\/a><\/li><\/ul><\/li><li class=\"uagb-toc__list\"><a href=\"#goal-org-based-developer-workstation\" class=\"uagb-toc-link__trigger\">Goal: Org-Based Developer Workstation<\/a><li class=\"uagb-toc__list\"><a href=\"#workstation-setup\" class=\"uagb-toc-link__trigger\">Workstation Setup<\/a><li class=\"uagb-toc__list\"><a href=\"#set-up-vs-code-remote-server-ssh-for-sfdx-cli\" class=\"uagb-toc-link__trigger\">Set Up VS Code Remote Server \u2013 SSH for SFDX-CLI<\/a><ul class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#install-java\" class=\"uagb-toc-link__trigger\">Install Java<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#create-user-account\" class=\"uagb-toc-link__trigger\">Create User Account<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#install-sfdx-cli-for-each-user\" class=\"uagb-toc-link__trigger\">Install SFDX-CLI for Each User<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#windows-ssh-key-setup\" class=\"uagb-toc-link__trigger\">Windows SSH Key Setup<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#setup-vs-code-for-remote-salesforce-development\" class=\"uagb-toc-link__trigger\">Setup VS Code for Remote Salesforce Development<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#install-vs-code-extensions-on-remote\" class=\"uagb-toc-link__trigger\">Install VS Code Extensions on Remote<\/a><\/li><\/ul><\/li><\/ul><\/li><li class=\"uagb-toc__list\"><a href=\"#create-first-project\" class=\"uagb-toc-link__trigger\">Create First Project<\/a><li class=\"uagb-toc__list\"><a href=\"#enable-vs-code-settings-sync\" class=\"uagb-toc-link__trigger\">Enable VS Code Settings Sync<\/a><li class=\"uagb-toc__list\"><a href=\"#secure-and-accelerate-your-development\" class=\"uagb-toc-link__trigger\">Secure and Accelerate Your Development<\/a><\/ul><\/ul><\/ol>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\n\n\n<h2 class=\"wp-block-heading\" id=\"h-leverage-the-power-of-vs-code-remote-ssh\"><strong>Leverage The Power of VS Code Remote &#8211; SSH<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">VS Code Remote &#8211; SSH is an exciting feature of VS Code because it lets developers use shared server resources to simplify workstation setups and accelerate devops pipelines. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This VS Code feature uses a high-performance backend server running standard Linux and where each user has their own login and home directory. For Salesforce developers, using a remote server simplifies the use of Java for the Apex language server, eliminating the need to install Java on individual workstations.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"968\" height=\"312\" src=\"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/architecture.png\" alt=\"VS Code Remote Architecture\" class=\"wp-image-3777\" srcset=\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/architecture.png 968w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/architecture-300x97.png 300w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/architecture-768x248.png 768w\" sizes=\"auto, (max-width: 968px) 100vw, 968px\" \/><figcaption>VS Code Remote Architecture<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Here is how it works. My workstation connects to a VS Code daemon running on the server. The server then takes over the bulk of VS Code extension processing needs, such as running the Apex language server and Java. The workstation is left to handle the VS Code user interface. This architecture reminds me of the<a href=\"https:\/\/en.wikipedia.org\/wiki\/X_terminal\"> Sun UNIX X Terminal<\/a> from the 1990s!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-key-benefits-for-the-enterprise\"><strong>Key Benefits for the Enterprise<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">There are distinct benefits to the Remote \u2013 SSH architecture for enterprises. The main one being that new members of a development team do not have to set up their individual workstations to run their toolchains. It all comes pre-installed in the Linux shell environment on the server. Another benefit is the added power, speed, and general productivity gained from using a scalable backend.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the SalesforceDevops.net lab I have some older Windows and Mac workstations. I managed to upgrade the developer experience for all these workstations by adding one shared, super-sized server computer running in the background. Now, with 16 Ryzen cores, 2 TB M.2 storage, and 128 GB power boost, NPM installs and VS Code fly like the wind, even on a five-year-old PC.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let us dig into the steps needed to power up your Salesforce devops workflow with VS Code Remote &#8211; SSH.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-goal-org-based-developer-workstation\">Goal: <strong>Org-Based Developer Workstation<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In this tutorial, I show how to set up a Windows 10 workstation and use VS Code Remote &#8211; SSH to connect an Ubuntu 20.04 Linux backend to create a more powerful developer experience. This setup procedure is designed for the Salesforce developer who wants to use source-based development techniques to modify existing orgs, which Salesforce refers to as \u201corg-based development.\u201d<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To get the job done, I show you how to set up the network components, set up the VS Code workstation, and then finish up by downloading a predefined set of metadata.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-workstation-setup\"><strong>Workstation Setup<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">To follow along with this tutorial, you need the Fira<em> Code Retina<\/em> font on your workstation. To install it please<a href=\"https:\/\/github.com\/tonsky\/FiraCode\/releases\/download\/5.2\/Fira_Code_v5.2.zip\"> download the font collection<\/a> and install the font file \u201cFira Code Retina.ttf\u201d. This works on Windows, Mac, and Linux.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Next, set the terminal font in VS Code. Get that going by clicking on the Settings icon and search for \u201cterminal font\u201d. Enter \u201cFira Code Retina\u201d and then close the Settings window.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This font is required because the Ubuntu shell enhancements installed later require a Powerline font to work properly. If you don&#8217;t like Fira Code Retina then you can install a different Powerline font.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-set-up-vs-code-remote-server-ssh-for-sfdx-cli\"><strong>Set Up VS Code Remote Server \u2013 SSH for SFDX-CLI<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You may use a virtual machine or a bare-metal setup for your server. It can be in your local network or in the cloud, depending on your Internet connectivity and budget. In my case I use a bare metal server running the local LAN segment to eke out every bit of performance.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I will describe some of the major steps in this post. Please <a href=\"https:\/\/youtu.be\/vdwM2WOUBuk\">check out the video for the full tutorial<\/a>. I put together a <a href=\"https:\/\/gist.github.com\/vkeenan\/3ba114d92044fa0c38c35e2ed354fde7\">GitHub gist<\/a> with all the steps summarized so you can follow along with the video.<\/p>\n\n\n\n<script src=\"https:\/\/gist.github.com\/vkeenan\/3ba114d92044fa0c38c35e2ed354fde7.js\"><\/script>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-install-java\"><strong>Install Java<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Java is required to run the Apex language server on the remote server. Ubuntu comes with OpenJDK v8 JRE version of Java, which works with the Apex language server. To install and verify Java on Ubuntu 20.04 use these commands:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo apt install default-jre\njava -version\nwhich java<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Note how the \u201cjava -version\u201d command only has one dash. The \u201cwhich java\u201d command shows the Java path, \u201c\/usr\/bin\/java\u201d, which we will need later.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-create-user-account\"><strong>Create User Account<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Create a non-privileged account on the server for each user who is using VS Code Remote &#8211; SSH. Use this command to create a new user on the server:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sudo adduser vern<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">The adduser command issues a series of prompts, all of which can be answered by hitting RETURN.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-install-sfdx-cli-for-each-user\"><strong>Install SFDX-CLI for Each User<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Each user on the server must have a separate NodeJS and NPM system installed within the user context. Plus, the Salesforce CLI, also known as SFDX-CLI, must also be installed for each user. All the steps required to do the setup are included in the video tutorial and the script.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For a gentler introduction to this setup procedure, please check out an earlier tutorial,<a href=\"https:\/\/origin.salesforcedevops.net\/index.php\/2021\/06\/10\/how-to-install-sfdx-cli-on-ubuntu-20-04-to-boost-developer-productivity\/\"> How to Install SFDX-CLI on Ubuntu 20.04 to Boost Developer Productivity<\/a>, for instructions on how to setup the ZSH shell and SFDX-CLI.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-windows-ssh-key-setup\"><strong>Windows SSH Key Setup<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Windows 10 comes bundled with OpenSSH, but it lacks the \u201cssh-copy-id\u201d command. This makes setting up an SSH key on for remote login on Windows trickier than on Mac or Linux workstations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To prevent frequent password prompts with using VS Code Remote \u2013 SSH follow these steps. Substitute \u201cdevops\u201d with your remote hostname and \u201cvern\u201d with your remote username.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">PS&gt; ssh vern@devops\n$ mkdir ~.\/.ssh\n$ touch ~\/.ssh\/authorized_keys\n$ logout\nPS&gt; ssh-keygen   # (press ENTER for all prompts)\nPS&gt; type C:\\Users\\user\\.ssh\\id_rsa.pub | ssh vern@devops 'cat &gt;&gt; .ssh\/authorized_keys'<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-setup-vs-code-for-remote-salesforce-development\"><strong>Setup VS Code for Remote Salesforce Development<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">These are the minimum extensions required to do Salesforce development using VS Code Remote &#8211; SSH:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=salesforce.salesforcedx-vscode\">Salesforce Extension Pack<\/a><\/li><li><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-vscode-remote.remote-ssh-edit\">Visual Studio Code Remote &#8211; SSH<\/a><\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Next, setup the remote connection:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">1. VS Code Command: Remote SSH: Add new SSH host\u2026\n2. Enter in prompt: vern@devops -A\n3. Acknowledge any MAC address security prompts\n4. Select Linux as the server type<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Test the connection by typing <code>CTRL-~<\/code> to bring up a terminal prompt.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-install-vs-code-extensions-on-remote\"><strong>Install VS Code Extensions on Remote<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Perform these steps to install the Salesforce extensions on the remote server.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">1. VS Code Command: Install Local Extensions in 'Remote'\n2.&nbsp;Select all available extensions for installation\n3. Click Install <\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-create-first-project\"><strong>Create First Project<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">With VS Code remotely logged on to the server, use <code>CTRL-~<\/code> to open a terminal prompt on the remote server. Run these commands to create your first project. When running step #3 follow the supplied prompts to log onto the web to complete the authentication process.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">sfdx force:project:create --projectname=mybranch \u2013manifest\ncd mybranch\nsfdx auth:device:login --setdefaultusername --setalias myUser\nsfdx force:source:retrieve --manifest=manifest\/package.xml<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Finally, use the VS Code File-Open Folder command to find the &#8220;mybranch&#8221; directory. Enter that directory and select it. That opens your window showing the source code tree. Use <code>CTRL-~<\/code> again to open a terminal prompt, and you are ready to go!<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-enable-vs-code-settings-sync\"><strong>Enable VS Code Settings Sync<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The VS Code settings sync segment is not included in the video, but VS Code Settings Sync is what makes the multi-workstation technique work smoothly! Until its introduction, the pain of re-installing needed extensions, font settings, etc. was a real deterrent to smooth operation of VS Code Remote &#8211; SSH for me.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The VS Code Settings Sync feature is still technically in beta, but I recommend its use. A GitHub or Microsoft account is required to use VS Code Settings Sync. To get started hit F1 and run this VS Code command:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">1. VS Code Command: Settings Sync: Turn On<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">A wizard takes you through some options, and then asks you to log onto either GitHub or Microsoft. From that point forward, VS Code Settings Sync works in the background without further attention. You just need to log onto Settings Sync with the same account on another workstation, and your settings will sync automatically.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-secure-and-accelerate-your-development\">Secure and Accelerate Your Development<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Using remote servers can not only boost your daily Salesforce developer productivity, but with source code and system configurations maintained within a security perimeter, software supply chain security goes up. Enterprise architects and power-hungry developers take note &#8212; VS Code Remote SSH accelerates your Salesforce devops pipeline.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I do my Salesforce coding work from any VS Code-compatible workstation, switching between Mac, Windows and Linux depending on my circumstances. I get this done with a remote server computer,&hellip;<\/p>\n","protected":false},"author":1,"featured_media":3933,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"video","meta":{"_uag_custom_page_level_css":"","footnotes":""},"categories":[7],"tags":[153,150,66],"post_series":[],"class_list":["post-3927","post","type-post","status-publish","format-video","has-post-thumbnail","hentry","category-how-to","tag-remote-development","tag-sfdx-cli","tag-vs-code","post_format-post-format-video","entry","has-media"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.2 (Yoast SEO v22.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development - SalesforceDevops.net<\/title>\n<meta name=\"description\" content=\"Learn how to configure VS Code Remote and SFDX-CLI to make developer onboarding and work coordination easier than ever.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development - SalesforceDevops.net\" \/>\n<meta property=\"og:description\" content=\"Learn how to configure VS Code Remote and SFDX-CLI to make developer onboarding and work coordination easier than ever.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\" \/>\n<meta property=\"og:site_name\" content=\"SalesforceDevops.net\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/salesforcedevopsnet\" \/>\n<meta property=\"article:published_time\" content=\"2021-06-18T20:09:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-12-02T16:38:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Vernon Keenan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@salesforcedevop\" \/>\n<meta name=\"twitter:site\" content=\"@salesforcedevop\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vernon Keenan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\"},\"author\":{\"name\":\"Vernon Keenan\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04\"},\"headline\":\"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development\",\"datePublished\":\"2021-06-18T20:09:59+00:00\",\"dateModified\":\"2021-12-02T16:38:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\"},\"wordCount\":1319,\"commentCount\":3,\"publisher\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\"},\"image\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png\",\"keywords\":[\"Remote Development\",\"SFDX-CLI\",\"VS Code\"],\"articleSection\":[\"How To\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#respond\"]}],\"copyrightYear\":\"2021\",\"copyrightHolder\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\",\"url\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\",\"name\":\"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development - SalesforceDevops.net\",\"isPartOf\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png\",\"datePublished\":\"2021-06-18T20:09:59+00:00\",\"dateModified\":\"2021-12-02T16:38:28+00:00\",\"description\":\"Learn how to configure VS Code Remote and SFDX-CLI to make developer onboarding and work coordination easier than ever.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage\",\"url\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png\",\"contentUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png\",\"width\":1200,\"height\":675,\"caption\":\"VS Code Remote SSH\"},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#website\",\"url\":\"https:\/\/cms.salesforcedevops.net\/\",\"name\":\"SalesforceDevops.net\",\"description\":\"Elevating Salesforce Devops with Insights and Innovation\",\"publisher\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cms.salesforcedevops.net\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\",\"name\":\"SalesforceDevops.net\",\"url\":\"https:\/\/cms.salesforcedevops.net\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg\",\"contentUrl\":\"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg\",\"width\":325,\"height\":101,\"caption\":\"SalesforceDevops.net\"},\"image\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/salesforcedevopsnet\",\"https:\/\/twitter.com\/salesforcedevop\",\"https:\/\/www.linkedin.com\/in\/vernonkeenan\",\"https:\/\/www.youtube.com\/channel\/UCOgOn9rD5gyXSOmV7-Q0n7g\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04\",\"name\":\"Vernon Keenan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg\",\"contentUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg\",\"caption\":\"Vernon Keenan\"},\"description\":\"Vernon Keenan (LinkedIn) works as a senior information technology industry consultant based in Oakland, California. He earned his B.Sc. in Biomedical Engineering at Northwestern University where he programmed a PDP-8 with punched paper tape. In his 34-year-long career he has been a teacher, SPSS programmer, database administrator, clinical researcher, technology journalist, product marketing manager, market researcher, management consultant, and industry analyst. Most recently he is a telecom operator, cloud architect, Go devops engineer and Salesforce Developer\/Architect. For inquiries about Salesforce strategy briefings or solution architect work please contact Vern directly at +1-510-679-1900 or vern@vernonkeenan.com.\",\"sameAs\":[\"https:\/\/ceres-gw.tnxs.net\",\"https:\/\/linkedin.com\/in\/vernonkeenan\",\"https:\/\/twitter.com\/salesforcedevop\"],\"url\":\"https:\/\/cms.salesforcedevops.net\/index.php\/author\/vern\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development - SalesforceDevops.net","description":"Learn how to configure VS Code Remote and SFDX-CLI to make developer onboarding and work coordination easier than ever.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/","og_locale":"en_US","og_type":"article","og_title":"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development - SalesforceDevops.net","og_description":"Learn how to configure VS Code Remote and SFDX-CLI to make developer onboarding and work coordination easier than ever.","og_url":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/","og_site_name":"SalesforceDevops.net","article_publisher":"https:\/\/www.facebook.com\/salesforcedevopsnet","article_published_time":"2021-06-18T20:09:59+00:00","article_modified_time":"2021-12-02T16:38:28+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png","type":"image\/png"}],"author":"Vernon Keenan","twitter_card":"summary_large_image","twitter_creator":"@salesforcedevop","twitter_site":"@salesforcedevop","twitter_misc":{"Written by":"Vernon Keenan","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#article","isPartOf":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/"},"author":{"name":"Vernon Keenan","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04"},"headline":"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development","datePublished":"2021-06-18T20:09:59+00:00","dateModified":"2021-12-02T16:38:28+00:00","mainEntityOfPage":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/"},"wordCount":1319,"commentCount":3,"publisher":{"@id":"https:\/\/cms.salesforcedevops.net\/#organization"},"image":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage"},"thumbnailUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png","keywords":["Remote Development","SFDX-CLI","VS Code"],"articleSection":["How To"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#respond"]}],"copyrightYear":"2021","copyrightHolder":{"@id":"https:\/\/cms.salesforcedevops.net\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/","url":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/","name":"How To Power Up SFDX-CLI with VS Code Remote SSH and Speed Up Salesforce Development - SalesforceDevops.net","isPartOf":{"@id":"https:\/\/cms.salesforcedevops.net\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage"},"image":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage"},"thumbnailUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png","datePublished":"2021-06-18T20:09:59+00:00","dateModified":"2021-12-02T16:38:28+00:00","description":"Learn how to configure VS Code Remote and SFDX-CLI to make developer onboarding and work coordination easier than ever.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/06\/18\/how-to-power-up-sfdx-cli-with-vs-code-remote-ssh-and-speed-up-salesforce-development\/#primaryimage","url":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png","contentUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png","width":1200,"height":675,"caption":"VS Code Remote SSH"},{"@type":"WebSite","@id":"https:\/\/cms.salesforcedevops.net\/#website","url":"https:\/\/cms.salesforcedevops.net\/","name":"SalesforceDevops.net","description":"Elevating Salesforce Devops with Insights and Innovation","publisher":{"@id":"https:\/\/cms.salesforcedevops.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cms.salesforcedevops.net\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cms.salesforcedevops.net\/#organization","name":"SalesforceDevops.net","url":"https:\/\/cms.salesforcedevops.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/","url":"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg","contentUrl":"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg","width":325,"height":101,"caption":"SalesforceDevops.net"},"image":{"@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/salesforcedevopsnet","https:\/\/twitter.com\/salesforcedevop","https:\/\/www.linkedin.com\/in\/vernonkeenan","https:\/\/www.youtube.com\/channel\/UCOgOn9rD5gyXSOmV7-Q0n7g"]},{"@type":"Person","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04","name":"Vernon Keenan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/image\/","url":"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg","contentUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg","caption":"Vernon Keenan"},"description":"Vernon Keenan (LinkedIn) works as a senior information technology industry consultant based in Oakland, California. He earned his B.Sc. in Biomedical Engineering at Northwestern University where he programmed a PDP-8 with punched paper tape. In his 34-year-long career he has been a teacher, SPSS programmer, database administrator, clinical researcher, technology journalist, product marketing manager, market researcher, management consultant, and industry analyst. Most recently he is a telecom operator, cloud architect, Go devops engineer and Salesforce Developer\/Architect. For inquiries about Salesforce strategy briefings or solution architect work please contact Vern directly at +1-510-679-1900 or vern@vernonkeenan.com.","sameAs":["https:\/\/ceres-gw.tnxs.net","https:\/\/linkedin.com\/in\/vernonkeenan","https:\/\/twitter.com\/salesforcedevop"],"url":"https:\/\/cms.salesforcedevops.net\/index.php\/author\/vern\/"}]}},"uagb_featured_image_src":{"full":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false],"thumbnail":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low-150x150.png",150,150,true],"medium":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low-300x169.png",300,169,true],"medium_large":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low-768x432.png",768,432,true],"large":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low-1024x576.png",980,551,true],"1536x1536":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false],"2048x2048":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false],"lightbox":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false],"search_results":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low-125x125.png",125,125,true],"blog_entry":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",750,422,false],"blog_post":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",750,422,false],"blog_post_full":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false],"blog_related":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false],"gallery":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/06\/VideoCoverPage-low.png",1200,675,false]},"uagb_author_info":{"display_name":"Vernon Keenan","author_link":"https:\/\/cms.salesforcedevops.net\/index.php\/author\/vern\/"},"uagb_comment_info":3,"uagb_excerpt":"I do my Salesforce coding work from any VS Code-compatible workstation, switching between Mac, Windows and Linux depending on my circumstances. I get this done with a remote server computer,&hellip;","_links":{"self":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts\/3927","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/comments?post=3927"}],"version-history":[{"count":16,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts\/3927\/revisions"}],"predecessor-version":[{"id":23493,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts\/3927\/revisions\/23493"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/media\/3933"}],"wp:attachment":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/media?parent=3927"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/categories?post=3927"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/tags?post=3927"},{"taxonomy":"post_series","embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/post_series?post=3927"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}