Hi @lewisl, sorry you had a hard time getting started. For future reference, you can use private repos as long as you connect them to your Render account during the service/static site creation process. Click on the GitHub or GitLab link to start the process:
I’d confirm that the Render app for GitHub is properly configured and has access to the repo. Go to https://github.com/apps/render and click Configure.
Well, it wasn’t quite what you described, but I “installed” Render into my blog repo and returned back to Render. Ran a deploy and there was no message that Render couldn’t connect. Of course, it had been connecting all along, successfully cloning the repo, building, and deploying.
Nowhere did I see any documentation indicating I should do this. Generally, you have serious shortcomings on doc. Don’t do LOTS of doc—that’s also a bit of a fail that others fall prey to. Just do the essential accurate and correct doc.
Got it on deploy. Sort of a shame because with a lot of images it’s a 1.1 gb site before expansion to deployable state so it’s a lot to deploy of stuff that doesn’t change often. But, when I’m done with lots of site design changes (converting from Ghost) then it will all settle down to creating new posts—still the whole build will be propped. Might be something to explore in the future: an option for “delta deploy”. More a curious thing than an obstacle.
The configure button doesn’t exist anywhere until AFTER
you have installed Render into a specific repository.
It is actually not at all obvious why this install into a specific repository, as opposed to authorizing Render to have access to your github account–which is absolutely necessary. If you don’t do this per repository install thing, you get a message that Render can’t connect to your repository. Then, Render merrily clone the repository, does the build, uploads and everything is perfect.
So, in addition to documentation it seems like you need to think through what the extra step does and why it is even needed.
So, then clicking configure provides a way to:
choose specific permissions that Render has
choose one or more repo’s that Render is installed into (which really means can see and access to clone)
revoke or suspend access for Render
A few problems: it doesn’t help the user to be able to choose/set the specific permissions because you know what you need and that’s what you need and you shouldn’t request more. But even if I don’t do this step Render can do the minimal thing it needs, which is to clone the repo.
it seems you can do all of this from the global settings option of your github account.
So, much ado about nothing to get rid of a log message, which is harmless anyway.
Or so it seems to me (I may be wrong) because everything worked as expected, except for the log message, without performing the configure step.
GitHub permissions are a little complex: there is the cloning permission as you’ve noted, and there are separate GitHub API permissions for things like listing the repositories a user owns or getting push events for new commits, which is needed for auto deploys. Render uses all these features, and it’s possible to have permission to clone a repo but not to list it, which is where you’re seeing the inconsistent messaging.
I believe the “right” solution for Render is to either 1) have guided support for partial permissions or 2) block service creation until we detect that permissions are totally set up, and guide you through what still needs configuration. Similarly to what @david said, we’ll be using your feedback to improve this messaging and the documentation to get rid of this inconsistency. Thanks for taking the time to provide it