Repository: elastic/go-sysinfo (go)

Issue:
Support Alpine Linux family
Currently there's a mapping for Linux distributions to families; E.G. Ubuntu and Rasbian are in the Debian family, CentOs and Fedora are in the Red Hat family https://github.com/elastic/go-sysinfo/blob/6d844a021a259bdc8ef539d7689934febbcca538/providers/linux/os.go#L50-L58

Alpine Linux is supported as a distribution and is included in tests, however it returns an empty string for the OS Family. While Alpine doesn't have many derivatives at this time, it is used enough in use cases like containers that for consistency and ease Family should return `alpine` just like you get `debian` for the family if you run it on `debian`

Pull request description:
Add Alpine family
Fixes #233

Patch:
diff --git a/.changelog/234.txt b/.changelog/234.txt
new file mode 100644
index 0000000..b26cb6b
--- /dev/null
+++ b/.changelog/234.txt
@@ -0,0 +1,3 @@
+```release-note:enhancement
+linux: Add alpine family to OSInfo
+```
\ No newline at end of file
diff --git a/providers/linux/os.go b/providers/linux/os.go
index 6a98892..ece0f37 100644
--- a/providers/linux/os.go
+++ b/providers/linux/os.go
@@ -48,7 +48,8 @@ var (
 
 // familyMap contains a mapping of family -> []platforms.
 var familyMap = map[string][]string{
-	"arch": {"arch", "antergos", "manjaro"},
+	"alpine": {"alpine"},
+	"arch":   {"arch", "antergos", "manjaro"},
 	"redhat": {
 		"redhat", "fedora", "centos", "scientific", "oraclelinux", "ol",
 		"amzn", "rhel", "almalinux", "openeuler", "rocky",


Test patch:
diff --git a/providers/linux/os_test.go b/providers/linux/os_test.go
index e3685ed..7f3f677 100644
--- a/providers/linux/os_test.go
+++ b/providers/linux/os_test.go
@@ -54,6 +54,7 @@ func TestOperatingSystem(t *testing.T) {
 		}
 		assert.Equal(t, types.OSInfo{
 			Type:     "linux",
+			Family:   "alpine",
 			Platform: "alpine",
 			Name:     "Alpine Linux",
 			Version:  "3.17.3",