prometheus / node_exporter

Exporter for machine metrics
https://prometheus.io/
Apache License 2.0
10.69k stars 2.31k forks source link

Build new *BSD CI pipelines #2883

Open SuperQ opened 6 months ago

SuperQ commented 6 months ago

Because the node_exporter requires C bindings for BSD builds we need to have BSD-capable CI runners in order to test builds.

We used to have a buildkite configuration, but this has fallen into disrepair.

We have a few options.

In order to do this with easier long-term maintenance, I think we should build some kind of automation around recycling the worker VMs. The original setup was built on a Packet/Equinix Metal server, which was too much work to maintain.

conallob commented 6 months ago

I'll take this.

I've previously did some cursory investigation into GitHub runners + FreeBSD, but GitHub themselves don't qualify their self hosted runners in BSD.

I'll investigate CircleCI, but a fourth option would be to create a new buildkite config, instead of repairing the existing one

mjtrangoni commented 6 months ago

Hi, this runs a little bit slow but did the job for me,

https://github.com/msktutil/msktutil/blob/master/.github/workflows/msktutil-freebsd.yml

I mean this action here, https://github.com/vmactions/freebsd-vm

conallob commented 6 months ago

@mjtrangoni Thanks for the pointer to https://github.com/vmactions/freebsd-vm

I'll play around with freebsd-vm and see how fast it is, before opening a PR to add VMs into GitHub Actions

phyber commented 4 months ago

If you haven't seen it (I didn't see it mentioned in search results of this repo), there's also Cirrus CI which has native support for FreeBSD runners and is free for open source projects. I use it on one of my FreeBSD projects and it's been fine over the years. I'm obviously unsure how it would perform with a way more popular project like this one.