Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

support for private github repos? #593

Closed
pablote opened this issue Dec 9, 2015 · 8 comments
Closed

support for private github repos? #593

pablote opened this issue Dec 9, 2015 · 8 comments
Labels
service-badge Accepted and actionable changes, features, and bugs

Comments

@pablote
Copy link

pablote commented Dec 9, 2015

Is there a way for me to create badges for private repos? I'm mostly interested in github related badges like this one: https://img.shields.io/github/tag/strongloop/express.svg

I went through the shields.io page, this repo, and I haven't found any information on how to achieve this, if possible at at.

thanks for the help

@espadrine
Copy link
Member

You may be able to do so by setting up your own instance of a shields server with the correct tokens in secret.json (see more here).

I would not accept a PR that requires you to include your secret token in the URL for the badge, for security reasons, so it's not as easy to do as it is for public repos.

@nexocentric
Copy link

Would either of you know if any progress has been made on this issue?

@fcpauldiaz
Copy link

What's the progress on this issue?

@paulmelnikow
Copy link
Member

Thaddée's comment above says it all:

You may be able to do so by setting up your own instance of a shields server with the correct tokens in secret.json (see more here).

I would not accept a PR that requires you to include your secret token in the URL for the badge, for security reasons, so it's not as easy to do as it is for public repos.

@eneko
Copy link

eneko commented Nov 17, 2017

@espadrine Seems like there are a bunch of shields that require (or support) passing a token in the URL. How are those services different than passing an access token for GitHub private repos?

Example:

https://img.shields.io/circleci/token/YOURTOKEN/project/github/RedSparr0w/node-csgo-parser/master.svg

Travis CI supports badges for private repos too, which is very cool. It would be great to be able to access release information, etc. In a secure way, of course.

@monokrome
Copy link

monokrome commented Jul 20, 2019

The important thing, I think, is that the token is only given access to status information. Only people who already have access to that information can read the data in that repo unless the contents of the repo are exposed elsewhere. At the point that they are exposed, what exactly are you protecting against now?

@dreamyguy
Copy link

I understand the concerns about security when information is behind tokens, in general terms.

But is build status such a big deal? Perhaps a subjective question out of a GitHub issue's scope, but I suppose those interested in showing the badge would be well aware of the "risk" they would be taking, in this case.

A statement like "we can't handle the load caused by opening up for private repos" would be quite fair and easier to accept. Peace. 🙂

@calebcartwright
Copy link
Member

A statement like "we can't handle the load caused by opening up for private repos" would be quite fair and easier to accept. Peace.

The rationale for the decision is articulated above, and it has absolutely nothing to do with load.

Seems like there are a bunch of shields that require (or support) passing a token in the URL. How are those services different than passing an access token for GitHub private repos?

AFAIK there's only two badges that accept a token in a route/url param (codeceov and circleci). If we could we'd remove them, but they still exist because we can't remove/break existing badges.

I understand why folks want badges for their private repos/projects, and that the fact that codecov and circle bages accept tokens is frustrating. However, we don't want to make the problem worse by adding more instances where Shields has to deal with url-provided private tokens.

There's two viable options for folks that want to use Shields to get badges for private repos:

  1. Use a self-hosted Shields instance with appropriate GH auth in your configuration -https://github.com/badges/shields/blob/master/doc/server-secrets.md#github
  2. Use Shields.io and the Endpoint badge with your own custom endpoint that provides the data needed for Shields.io to create and provide the badge - https://shields.io/endpoint

I hope that helps, though fully realize some folks will still be unhappy with the decision.

I'm going to lock this one as well given all of the above and the age of the issue.

@badges badges locked as resolved and limited conversation to collaborators Feb 22, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
service-badge Accepted and actionable changes, features, and bugs
Projects
None yet
Development

No branches or pull requests

9 participants