debian-forge-composer/internal/users/users.go
Achilleas Koutsou 820d3d0277 users: convenience functions for converting from BP
The types currently map directly, so it's simple to convert from one to
the other.
2022-09-13 16:06:19 +01:00

40 lines
1 KiB
Go

package users
import "github.com/osbuild/osbuild-composer/internal/blueprint"
type User struct {
Name string
Description *string
Password *string
Key *string
Home *string
Shell *string
Groups []string
UID *int
GID *int
}
type Group struct {
Name string
GID *int
}
func UsersFromBP(userCustomizations []blueprint.UserCustomization) []User {
users := make([]User, len(userCustomizations))
for idx := range userCustomizations {
// currently, they have the same structure, so we convert directly
// this will fail to compile as soon as one of the two changes
users[idx] = User(userCustomizations[idx])
}
return users
}
func GroupsFromBP(groupCustomizations []blueprint.GroupCustomization) []Group {
groups := make([]Group, len(groupCustomizations))
for idx := range groupCustomizations {
// currently, they have the same structure, so we convert directly
// this will fail to compile as soon as one of the two changes
groups[idx] = Group(groupCustomizations[idx])
}
return groups
}