Github Enterprise Private Mode in 1.0+

I am running drone 1.2.1 against a github enterprise instance in “private mode”.

When repos are fetched, they do not have the repo_private flag set in the db. Manually changing it allows clones to succeed.

From this thread, I rebuilt the entire drone system (in k8s) with DRONE_GITHUB_PRIVATE_MODE set from the start. No effect. Still had to manually set repo_private in postgres to get clones working.

Digging in the code from what I can find, it looks like maybe that flag doesn’t exist in 1.0+? Is there some other way to do this?

DRONE_GITHUB_PRIVATE_MODE was used in older versions of Drone, but in 1.x you should set DRONE_GIT_ALWAYS_AUTH=true. This instructs Drone to always clone a repository with credentials.

Perfect! That does the trick.

Am I correct in assuming it clones with the oauth token from the user who first activated the repo?


Yes, this is the default behavior. You also have the option to provide global credentials via DRONE_GIT_USERNAME and DRONE_GIT_PASSWORD.