Relay is an event-driven DevOps platform. It listens to events from 3rd party services like AWS, Datadog, PagerDuty, Jira and more to trigger simpler, smarter workflows that automate tedious tasks. A lot of existing solutions either require a lot of upfront DIY work (AWS Lambda or running your own script) or they weren’t built for DevOps teams (Zapier, IFTTT).
Relay provides out-of-the-box workflows for common use cases like cloud cost optimization, security, incident response and more. If those don't work for you, you can write your own workflow using integrations with dozens of cloud provider services, open source tools and APIs that can be composed together in a YAML-based workflow (yes, I know, more YAML).
Some features we think are interesting:
- Visual execution graph shows exactly what's happening in your workflow run.
- Connections make it simple to authenticate to other services.
- Audit log shows who initiated every workflow run, whether manual or by an external service.
- Human in the loop approvals give you full confidence in your automation.
- Growing community of 30+ open source integrations with AWS, Azure, GCP, Datadog, PagerDuty, VictorOps, Jira, Terraform, Helm, and more.
Looks great! "Zapier for DevOps" would convey it a lot faster. It didn't click for me until I got to that part. I'm excited to try it out!
A couple things:
1) Please, please support some other config file other than just YAML. Even JSON would be an improvement, since you wouldn't have to change your config reader library. YAML has been a miserable nightmare to use in other tools like Open API Spec. I'm not alone in my YAML hate, either[1][2][3][4].
Implicit typing and semantic whitespace in a data file is insane. At least in Python, you're not unlikely to get an error if your whitespace is off. In a config file, you might just end up with dangerous/confusing behavior.
2) I'm surprised you used Relay, which is already used by Facebook. I don't think Facebook is going to care that much, but it's going to be really hard to Google this library.
(When) Is a self-hosted version coming? Does Relay use Lyra in some way, or is it a brand new engine?
The usual DevOps automation web systems like Jenkins, GoCD, Rundeck are all disappointing in one way or a dozen. Java, to start with. I'm desperate to see a modern, full-featured, self-hosted alternative.
What made you go for yaml rather than your own DSL? For a service that's as programmable as relay, it seems nice to have better support for branching control flow for example.
Hey there, as mentioned elsewhere I'm an engineer on Relay. Our PM is busy right now so thought I'd jump in.
> Have you any comparisons between this and StackStorm?
Relay is very similar to StackStorm! One of the biggest differences between Relay and StackStorm, however, is that every step and trigger in Relay is just a docker container. You can basically run any container you want, but containers that are authored specifically for Relay are, obviously, better (integration with the execution environment, our secrets management service, etc.).
> is this only going to be a SaaS offering
This is another key difference between Relay and StackStorm: We only offer a SaaS right now. That's not to say that we won't eventually offer a self-hosted version (or some sort of hybrid solution for that matter)--it's just the approach we're going with for now.
So I didn't see anything on your site on my cursory glance at it, but I'd like to know if you have any use cases replacing Jenkins Pipelines and Helm deployments into an OpenShift/Kubernetes environment? I'm writing a lot of Jenkins pipelines now and groovy is killing me!
The limiting factor right now would be whether your cluster is accessible to the internet, which of course isn't super common. We are working through what our story for connecting to on-prem infrastructure looks like, so if you can provide any additional details on your environment, it would be helpful!
I think we can do the same things using github actions now. P.S we have self-hosted runners in our enviroment where each step is a docker container too.
We have complex flows where we use Slack, Spinnaker(Webhooks), Terraform, PagerDuty ... and much more.
Is there something better that we can achieve with this?
This is a good question, thank you! The flow of events into our system is somewhat different than GitHub Actions. We're trying to be a consumer of all sorts of events, including, say, data published to AWS SNS or via a Docker Hub webhook[0]. All of that isn't quite in place yet, but we want to act more like an event broker than a CI/CD solution alone.
One concept we're throwing around is supporting CloudEvents[1] and dispatching workflows based on event types. If anyone has experience with CloudEvents we'd love to hear if that would be something useful to you.
We're thinking about a few different models, but haven't settled on one yet. What kind of model would you be interested in? Metered or other usage-based, per-seat or per-user, or something totally different?
product1087|5 years ago
Relay is an event-driven DevOps platform. It listens to events from 3rd party services like AWS, Datadog, PagerDuty, Jira and more to trigger simpler, smarter workflows that automate tedious tasks. A lot of existing solutions either require a lot of upfront DIY work (AWS Lambda or running your own script) or they weren’t built for DevOps teams (Zapier, IFTTT).
Relay provides out-of-the-box workflows for common use cases like cloud cost optimization, security, incident response and more. If those don't work for you, you can write your own workflow using integrations with dozens of cloud provider services, open source tools and APIs that can be composed together in a YAML-based workflow (yes, I know, more YAML).
Some features we think are interesting:
- Visual execution graph shows exactly what's happening in your workflow run.
- Connections make it simple to authenticate to other services.
- Audit log shows who initiated every workflow run, whether manual or by an external service.
- Human in the loop approvals give you full confidence in your automation.
- Growing community of 30+ open source integrations with AWS, Azure, GCP, Datadog, PagerDuty, VictorOps, Jira, Terraform, Helm, and more.
We also just recently put out a blog post about some pretty novel uses of Knative and Ambassador to create user-generated triggers: https://blog.getambassador.io/user-defined-webhooks-in-puppe...
smt88|5 years ago
A couple things:
1) Please, please support some other config file other than just YAML. Even JSON would be an improvement, since you wouldn't have to change your config reader library. YAML has been a miserable nightmare to use in other tools like Open API Spec. I'm not alone in my YAML hate, either[1][2][3][4].
Implicit typing and semantic whitespace in a data file is insane. At least in Python, you're not unlikely to get an error if your whitespace is off. In a config file, you might just end up with dangerous/confusing behavior.
2) I'm surprised you used Relay, which is already used by Facebook. I don't think Facebook is going to care that much, but it's going to be really hard to Google this library.
1. https://dev.to/jessekphillips/stop-using-yaml-3kec
2. https://hitchdev.com/strictyaml/why/implicit-typing-removed/
3. https://devopsdays.org/events/2019-stockholm/program/philipp...
4. https://www.arp242.net/yaml-config.html
tie_|5 years ago
The usual DevOps automation web systems like Jenkins, GoCD, Rundeck are all disappointing in one way or a dozen. Java, to start with. I'm desperate to see a modern, full-featured, self-hosted alternative.
poppejans|5 years ago
jacques_chester|5 years ago
tbrb|5 years ago
Additionally, is this only going to be a SaaS offering, or will we have the option to self-host this as well?
bradhe|5 years ago
> Have you any comparisons between this and StackStorm?
Relay is very similar to StackStorm! One of the biggest differences between Relay and StackStorm, however, is that every step and trigger in Relay is just a docker container. You can basically run any container you want, but containers that are authored specifically for Relay are, obviously, better (integration with the execution environment, our secrets management service, etc.).
> is this only going to be a SaaS offering
This is another key difference between Relay and StackStorm: We only offer a SaaS right now. That's not to say that we won't eventually offer a self-hosted version (or some sort of hybrid solution for that matter)--it's just the approach we're going with for now.
stuff4ben|5 years ago
impl|5 years ago
The limiting factor right now would be whether your cluster is accessible to the internet, which of course isn't super common. We are working through what our story for connecting to on-prem infrastructure looks like, so if you can provide any additional details on your environment, it would be helpful!
lomkju|5 years ago
We have complex flows where we use Slack, Spinnaker(Webhooks), Terraform, PagerDuty ... and much more.
Is there something better that we can achieve with this?
impl|5 years ago
This is a good question, thank you! The flow of events into our system is somewhat different than GitHub Actions. We're trying to be a consumer of all sorts of events, including, say, data published to AWS SNS or via a Docker Hub webhook[0]. All of that isn't quite in place yet, but we want to act more like an event broker than a CI/CD solution alone.
One concept we're throwing around is supporting CloudEvents[1] and dispatching workflows based on event types. If anyone has experience with CloudEvents we'd love to hear if that would be something useful to you.
[0]: https://github.com/relay-integrations/relay-dockerhub/blob/m...
[1]: https://cloudevents.io/
crazypython|5 years ago
impl|5 years ago
I wrote an SSH step for you. Here's the source code:
https://github.com/relay-integrations/relay-ssh/blob/master/...
And since it isn't documented yet, here's how you would use it in a workflow:
Please feel free to shoot me an email (check my profile) and I'd be happy to help write a workflow for your use case with you!unknown|5 years ago
[deleted]
drinker|5 years ago
product1087|5 years ago
kevinsf90|5 years ago
captainavocado|5 years ago