How to set up a CI/CD to build RPMs for Elastic Stack components?

Hello. I'm a new user in this community forum (but not exactly an Elastic noob - I've been working with it for several years now), so if this post isn't in the right category please let me know.

I'm looking to see if I can set up a local automated CI/CD environment to frequently build the major elastic components (and to make it easier to fork changes and make contributions back upstream). I would like to primarily build the "oss" flavor of the major components to get started:

  • beats
  • logstash
  • elasticsearch
  • kibana

Before now i've been either using the rpms published by elastic.co or downloading the tar.gz versions and installing from there, but now we have a larger project coming up where I'll have the requirement to install from RPMs using Ansible. Possibly as an "air-gapped" installation, i.e. not having connection to the internet (so we'll probably use a local yum repo for that).

And to complicate things I also have to support both x86_64 and ppc64le architectures. Of course elastic already supplies the x86_64 rpms, but not the ppc64le rpms.

Basically my experience on ppc64le has been that, exclusing xpacks or anything native, all the "oss" elastic components have been working ok "as is" right now (which is expected since it's java which is - mostly - arch independent).

I've successfully cloned the code from github and run gradle on them on both architectures, but I can't easily find how to produce the rpms that are published by elastic.co in their "oss" repo, here:
https://artifacts.elastic.co/packages/oss-7.x/yum

That's why I'm looking at the possibility of setting up my own CI/CD that builds the RPMs for my stack automatically for all future github tags of these components. This will also possibly help us contribute back upstream if we find something that merits some enhancements or arch-related changes. And of course to be more connected to the larger elastic community and contribute to it.

Does anyone know if the automation that builds these RPMs are published somewhere? Or, if not, anyone knows who is the best person I could contact at elastic.co to discuss a possible reuse and partnership to tie back to their CI/CD (and hosting workers for the ppc64le architecture)?

Any help/references here would be appreciated. Thanks.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.