- Removed unnecessary version.go file - Moved utils to their own go package - Moved test packages under the to the test_packages directory - Added the bpm-utils test package which can be used to make your own bpm packages
49 lines
826 B
Go
49 lines
826 B
Go
package bpm_utils
|
|
|
|
import "syscall"
|
|
|
|
func getArch() string {
|
|
u := syscall.Utsname{}
|
|
err := syscall.Uname(&u)
|
|
if err != nil {
|
|
return "unknown"
|
|
}
|
|
return byteArrayToString(u.Machine[:])
|
|
}
|
|
|
|
func getKernel() string {
|
|
u := syscall.Utsname{}
|
|
err := syscall.Uname(&u)
|
|
if err != nil {
|
|
return "unknown"
|
|
}
|
|
return byteArrayToString(u.Sysname[:]) + " " + byteArrayToString(u.Release[:])
|
|
}
|
|
|
|
func stringSliceRemove(s []string, r string) []string {
|
|
for i, v := range s {
|
|
if v == r {
|
|
return append(s[:i], s[i+1:]...)
|
|
}
|
|
}
|
|
return s
|
|
}
|
|
|
|
func stringSliceRemoveEmpty(s []string) []string {
|
|
var r []string
|
|
for _, str := range s {
|
|
if str != "" {
|
|
r = append(r, str)
|
|
}
|
|
}
|
|
return r
|
|
}
|
|
|
|
func byteArrayToString(bs []int8) string {
|
|
b := make([]byte, len(bs))
|
|
for i, v := range bs {
|
|
b[i] = byte(v)
|
|
}
|
|
return string(b)
|
|
}
|