eclipse-csi / otterdog

OtterDog is a tool to manage GitHub organizations at scale using a configuration as code approach. It is actively used by the Eclipse Foundation to manage its numerous projects hosted on GitHub.
https://otterdog.readthedocs.org
Eclipse Public License 2.0
24 stars 4 forks source link

Use ghproxy in deployment #274

Closed netomi closed 1 month ago

netomi commented 2 months ago

To avoid hitting secondary rate limits when accessing the GitHub API from different services within the cluster: https://docs.prow.k8s.io/docs/ghproxy/

netomi commented 2 months ago

Created https://github.com/kubernetes-sigs/prow/pull/280 to fix a few small minor things.

I could already integrate ghproxy into otterdog and it works pretty neat.

netomi commented 2 months ago

The additional throttling mechanism to prevent hitting secondary rate limits is not exactly what we would need / want.

It lets you specify how much time must pass between individual requests, e.g. 100ms, so does not take into account the potential cost of a query.

Putting the delay too high will result in quite slow processing as we need to do a lot of requests when retrieving the current live configuration of an organization. Too low values might still result in secondary rate limits issues.