Show HN: Effortless on-demand preview environments in your cloud
1 points| hemezh | 3 years ago |cohesive.so | reply
As engineering teams grow in size and complexity, getting access to a stable environment to test your code and collaborate with team members becomes more and more difficult. In many early stage organisations, the focus is on growth and the lack of tooling makes it hard to spin up new environments on-demand. This causes many frustrations:
1. Some teams end up creating a queuing mechanism where environments are locked by an engineer/QA or team trying to get their feature out. This is error prone and requires high collaboration to work, if at all.
2. The DevOps team has to manually spin up these environments. This adds to their already quite full plates and slows down releases.
3. We've seen most teams create an in-house solutions for this. This requires high investment and needs continued maintenance. It's also typically quite expensive and takes effort to be cost effective.
We believe, in 2022, this should be a solved problem and hence we decided to build it. Here's are some features:
1. Test every PR in its own environment.
2. All the infra runs in your cloud. This means you get all the benefits without compromising on capabilities.
3. Once the config(how to run your application and the resources it needs) is set up, everyone else can just reuse it to launch environments. This simplifies onboarding for new hires massively.
4. There are cases when the service you're working is dependent on a few other services. We provide a solution for this out of the box where you can launch a group of services with one click or on PR. We call it Stacks.
5. Environments can be made private which can only be accessed when connected to the private network for your org. This is easy to do with the CLI.
6. Save costs by hibernating environments when not in use.
7. Written in Go and runs on K8s(EKS for now). We currently support AWS with plans to support other platforms soon.
Join our Slack community here: https://join.slack.com/t/cohesive-community/shared_invite/zt...
Let me know what you think also would be happy to answer any questions.
[+] [-] QuinnyPig|3 years ago|reply
In practice? The rubber-meets-the-road challenges are not insignificant. Everything that aspires to set up environments like this seems to find itself dashed upon the rocks of "oh, that particular third party API is the same in prod as it is in pre-prod," "stateful datasets that need to be independent of other environments but also purged of sensitive content," and a bunch of unknown unknowns that exist in a given production environment despite everyone's best efforts.
I've got an AWS application that I'd love to to build preprod environments for (not in Kubernetes) and despite controlling all of the dependencies myself, I still have an eternal backlog item hanging over my head to go through and abstract all the environment-specific stuff out. In other words, "the heavy lifting isn't in the part that I understand your service to do." :-/
Man, do I wish it were otherwise.