Self-hosting with Kubernetes/Docker #22
davegaeddert
started this conversation in
General
Replies: 1 comment 3 replies
-
|
It's not that it needs to run on kubernetes per se, it needs to be shipped via Docker images. Your customers can deal with rigging a way to run the Docker images (in our case, a kubernetes pod). If you can just ship it as Docker, it can run the same way everywhere on any cloud on Kubernetes, ECS, Nomad.. whatever. Just yesterday, we spent hours trying to fight with terraform to launch more lambadas and it just makes very little sense from my vantage point to continue to do things that way. Lambda is the one thing all Amazon customers have but that nobody wants to use because the tooling isn't very good. |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Currently PullApprove Enterprise (the self-hosted version) is deployed via Terraform onto AWS Lambda and a handful of other AWS services.
In the past week there have been several questions about whether a Kubernetes option is available and I want to be open to that idea!
Here are some of the reasons, from what I can tell:
I think getting PullApprove onto Kubernetes is a totally viable idea. I doubt that it will make sense for it to run as a single container though. Mostly due to webhook timeout requirements -- GitHub uses a 10 second timeout and depending on size of a PR etc. it can take longer than that for PullApprove to run. So, my initial guess at what we'd end up needing to run would be:
What would people expect for an install / upgrade / deployment process? Configure it entirely on your own if given a PullApprove Docker container (or two)? A Helm chart? Anything with Terraform (some minimal S3 (or S3 compatible) services would still be required, I think)?
On the topic of hosting options and Docker containers, I should also add that I've considered whether pullapprove could run as a GitHub Action / GitLab Pipeline / etc. The biggest downside to this would be that pullapprove responds to a lot of events that aren't triggered by those systems, so it would probably fall back to a semi-run-on-demand kind of situation because the status could easily be outdated (not great from a compliance perspective). It would also trigger a lot of CI runs if used like it is today. If this sounds like a potential direction, let me know...
Anyway, I just wanted to start a public discussion in case people want to chime in here. If we shift to Kubernetes for self-hosting PullApprove, my preference would be to drop the Lambda support for sake of maintainability. So I really would want to make sure this direction is fully thought through before taking it on, and a lot of that needs to be influenced by the people using it! You can email me if you prefer to discuss details in private (I can post relevant points back here), but otherwise we would probably all benefit from this being a shared conversation. Thanks!
Beta Was this translation helpful? Give feedback.
All reactions