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

Official container? #319

Open tykeal opened 1 week ago

tykeal commented 1 week ago

My team is currently considering Otterdog for managing a lot GitHub repos across several organizations and we noticed that there is a Dockerfile defined but there doesn't seem to be a released container anywhere. None of the docs talk about how to use the container and I have not been able to figure it out myself.

Could I get a pointer? We're hoping to find a way to do some automation around using Otterdog via GitHub Actions and having an official container along with information on how to use it would be very useful!

netomi commented 1 week ago

A docker container is available here: https://github.com/eclipse-csi/otterdog/pkgs/container/otterdog

Every push to the main branch updates the latest snapshot version and releases are also published there.

If you wanna use otterdog, we probably should document / explain the initial setup. Its not too much hassle but the documentation is lacking in this regard as we were using that only for ourselves so far.

btw. take a look at the dashboard at https://otterdog.eclipse.org to get a feeling on its current features. We also started to work on policies and blueprints (see https://otterdog.readthedocs.io/en/latest/reference/blueprints/)

netomi commented 1 week ago

So what things are required for an otterdog instance:

you will need some credential store to store some credentials that the cli uses, currently supported are pass and bitwarden.

fyi: there is a cli tool and a GitHub App. So far they operate fully independent of each other as this is how the tool evolved, but in the long term the cli tool should connect to the GitHub App to further reduce the need to store additional credentials in the credential store.

I would be happy to give an introduction how its being used and operated at the EF. There are certainly some rough edges, but we would be happy to make the deployment as simple as possible for others to use as well.

tykeal commented 1 week ago

Is there some way to essentially consume it without having to keep a k8s cluster up somewhere? Our real desire is to have configuration and enforcement based on changes to the repository be propagated via a GitHub Actions run.

We currently do something very much like that with Jenkins systems using Jenkins Job Builder and our Gerrit systems using custom tooling we created. We're needing to start managing a lot more GitHub orgs though and I want to make sure my team is doing it all the same and let our communities more self-sufficiency and right now the debate is between Otterdog and Clowarden but we really don't want to be keeping all the infra (including DB) for stuff.

tykeal commented 1 week ago

If some sort of 30 minute meeting would work, I would be happy to do that as well. I can be reached at agrimberg@linuxfoundation.org for scheduling it :)