X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0cbcf8cb892c6011ae162e840e1892602d8af940..0be45d32255d83c410aad4e34560c478917ee6c4:/tools/sync-groups/sync-groups.go diff --git a/tools/sync-groups/sync-groups.go b/tools/sync-groups/sync-groups.go index 6b4781c354..af7b2e92eb 100644 --- a/tools/sync-groups/sync-groups.go +++ b/tools/sync-groups/sync-groups.go @@ -130,7 +130,7 @@ func ParseFlags(config *ConfigParams) error { "username": true, } - flags := flag.NewFlagSet("arv-sync-groups", flag.ExitOnError) + flags := flag.NewFlagSet(os.Args[0], flag.ExitOnError) // Set up usage message flags.Usage = func() { @@ -166,7 +166,7 @@ func ParseFlags(config *ConfigParams) error { // Print version information if requested if *getVersion { - fmt.Printf("arv-sync-groups %s\n", version) + fmt.Printf("%s %s\n", os.Args[0], version) os.Exit(0) } @@ -217,7 +217,7 @@ func SetParentGroup(cfg *ConfigParams) error { return fmt.Errorf("error searching for parent group: %s", err) } if len(gl.Items) == 0 { - // Default parent group not existant, create one. + // Default parent group does not exist, create it. if cfg.Verbose { log.Println("Default parent group not found, creating...") } @@ -288,7 +288,7 @@ func doMain(cfg *ConfigParams) error { } defer f.Close() - log.Printf("arv-sync-groups %s started. Using %q as users id and parent group UUID %q", version, cfg.UserID, cfg.ParentGroupUUID) + log.Printf("%s %s started. Using %q as users id and parent group UUID %q", os.Args[0], version, cfg.UserID, cfg.ParentGroupUUID) // Get the complete user list to minimize API Server requests allUsers := make(map[string]arvados.User) @@ -307,7 +307,7 @@ func doMain(cfg *ConfigParams) error { } userIDToUUID[uID] = u.UUID if cfg.Verbose { - log.Printf("Seen user %q (%s)", u.Username, u.Email) + log.Printf("Seen user %q (%s)", u.Username, u.UUID) } } @@ -317,6 +317,11 @@ func doMain(cfg *ConfigParams) error { return err } log.Printf("Found %d remote groups", len(remoteGroups)) + if cfg.Verbose { + for groupUUID := range remoteGroups { + log.Printf("- Group %q: %d users", remoteGroups[groupUUID].Group.Name, len(remoteGroups[groupUUID].PreviousMembers)) + } + } membershipsRemoved := 0 @@ -504,9 +509,9 @@ func GetRemoteGroups(cfg *ConfigParams, allUsers map[string]arvados.User) (remot Operator: "=", Operand: group.UUID, }, { - Attr: "head_kind", - Operator: "=", - Operand: "arvados#user", + Attr: "head_uuid", + Operator: "like", + Operand: "%-tpzed-%", }}, } // User -> Group filter @@ -528,9 +533,9 @@ func GetRemoteGroups(cfg *ConfigParams, allUsers map[string]arvados.User) (remot Operator: "=", Operand: group.UUID, }, { - Attr: "tail_kind", - Operator: "=", - Operand: "arvados#user", + Attr: "tail_uuid", + Operator: "like", + Operand: "%-tpzed-%", }}, } g2uLinks, err := GetAll(cfg.Client, "links", g2uFilter, &LinkList{}) @@ -579,7 +584,7 @@ func GetRemoteGroups(cfg *ConfigParams, allUsers map[string]arvados.User) (remot // RemoveMemberFromGroup remove all links related to the membership func RemoveMemberFromGroup(cfg *ConfigParams, user arvados.User, group arvados.Group) error { if cfg.Verbose { - log.Printf("Getting group membership links for user %q (%s) on group %q (%s)", user.Email, user.UUID, group.Name, group.UUID) + log.Printf("Getting group membership links for user %q (%s) on group %q (%s)", user.Username, user.UUID, group.Name, group.UUID) } var links []interface{} // Search for all group<->user links (both ways)