Andy in the Cloud

From BBC Basic to and beyond…

GitHub Salesforce Deploy Tool Lightning Edition


A recent discussion on Twitter around sharing Salesforce configuration between admins has motivated me to revisit this tool. Before getting into anything major (watch this space). I decided to get back into the tools code by addressing a few outstanding maintenance tasks, enhancements and bug fixes, as well as treating it to a face lift!


As some of you may have noticed the tool has now adopted the Salesforce Lightning Design System look and feel. This new version is not just cosmetic, its also addressed some key enhancements and bug fixes…


In keeping with the Lightning principles, this release makes the Deploy to Salesforce button (example shown below), even easier to place in your repository README files with less configuration required. The button will now automatically detect the GitHub repository. Which is useful if you Fork a repository into your own account or rename it, you no longer need to change the README file. The button code is now also smaller.


IMPORTANT NOTE: This only works if your placing the button code in a GitHub README file. If your planning on using the button on a blog, article or wiki etc tick Use Specified Owner and Repository checkbox to have the specified repository details encoded into the button code as before.

This release has now also addressed issues preventing use with repositories that have Reports or Lightning Components in them. So you can now use the tool to deploy your favourite open source Lightning Components!

Finally if you have any private repositories, an improvement around the error handling in this area has also been made. Thanks to some great code contributions from Moti Korets and  Nathan Kramer for the whole GitHub private repository support! Thanks guys!



20 thoughts on “GitHub Salesforce Deploy Tool Lightning Edition

  1. hi! I’m having an issue with the deploy where it says:

    Deployment Complete
    customMetadata/,1):Error parsing file: Content is not allowed in prolog.

    All I have in my is the button itself. Not sure how to fix. Any help appreciated thanks!!

  2. Pingback: GitHub Salesforce Deploy Tool Lightning Edition — Andy in the Cloud | SutoCom Solutions

  3. Hi Andy,

    Thank you very much for your contributions around the Metadata API tools.
    I’m a Developer based out of Los Angeles, trying to get my toes wet with the API tools.

    I tried the “deploy to Salesforce” button but am met with a failed attempt (Oath failed).
    My developer org does not have IP restrictions so not sure what to do in order to get this to work.
    Is there a specific IP I can whitelist or sometime like that in order to try this out?


    • Do you get the prompt to select sandbox?

    • And thanks for your kind words! 🙂

      • I do get the prompt to select production – developer / sandbox as well as the Owner and Repository. I leave it as Production – Developer and keep the Owner at financialforcedev and Repo at apex-mdapi. I then login to my org, it processes, and then gives Oath error.

        I do have mydomain turned on, if that matters.

        On Mon, May 30, 2016 at 5:52 AM, Andy in the Cloud wrote:

        > Andrew Fawcett commented: “And thanks for your kind words! :-)” >

      • Hmmm this could be a bug, I see someone else has pointed it out on the repo, there is a GitHub issue that seems to relate to this. Can you add your information to that please, it will help when I get to it, debug wise.

    • I’m facing the same issue: OAuth error after access granted.

      • Yes there is some issue here I need to dig into. Meanwhile the workaround is to quit your browser and try the button again, this will force the login flow to activate

  4. Hi Andy,

    The sandbox version when I’m trying to install this repository keep coming up with an application error. I get the first screen, choose sandbox, add the owner and repo link, when I click on login with SF it errors. If I choose Production it works.


  5. Your tool seems great … congratulation.

    I have a question regarding the use of your tool on a customer environment.

    I have to build a Design Authority Asset Management tool to expose source codes of reusable components to a community (not a salesforce one).

    The customer wants to use a GIT repository so your tool sounds great for deployment (like an unmanaged packaged deployment but on GITHUB source).

    My question is: Is it possible to use your HEROKU enviromenent for my customer purpose (part of my asset management process), and if not, is it possible to get your tool source code to deploy on my customer dedicated HEROKU instance.

  6. I’ve seen a deploy button using this tool being provided on other github repositories. The button links to

    I’d like to do the same for apex-lambda library ( Is this acceptable and is the githubsfdeploy Heroku app expected to stay online “permanently”? Thanks!

  7. I’ve seen this tool being used through a deploy button on some github projects linking to Is this okay and will the Heroku app be up “permanently”?

    I’d like to use the same button for apex-lambda library ( Thanks!

    • So first of all, VERY cool library! I tried to reach you to discuss recently as it happens? Can you DM me on Twitter please, love to talk! Secondly, no you don’t need those params at all. If the button is on a GitHub README file it will figure them out from the HTTP Reffer header information. This help if folks fork or branch, the button continues to work for their force/branch. Hope to speak soon!

  8. I tried the “deploy to Salesforce” button but I am getting the OAuth failed error though my sandbox
    does not have IP restrictions so not sure what to do in order to get this to work.
    Also sometimes when it gets connected successfully , it shows deployment is complete but shows error Internal server

    • Try clearing your cache and closing the browser especially if you have been moving around between orgs – sometimes it can get confused – never been able to fully track down why. When you do get connected and see deploy errors another place to look is in the org under Setup search for Deployments and this can show more detailed errors. Hope this helps.

Leave a Reply to Ilija Pavlic Cancel reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s