[MM-63772] Add LDAP setting to re-add removed members (#30787)

Этот коммит содержится в:
Ben Schumacher
2025-05-20 11:15:25 +02:00
коммит произвёл GitHub
родитель 5021fc72c6
Коммит c2d08b7540
22 изменённых файлов: 143 добавлений и 101 удалений

Просмотреть файл

@@ -20,12 +20,22 @@ var LdapCmd = &cobra.Command{
Short: "LDAP related utilities",
}
var LdapSyncCmd = &cobra.Command{
Use: "sync",
Short: "Synchronize now",
Long: "Synchronize all LDAP users and groups now.",
Example: " ldap sync",
RunE: withClient(ldapSyncCmdF),
func newLDAPSyncCmd() *cobra.Command {
cmd := &cobra.Command{
Use: "sync",
Short: "Synchronize now",
Long: "Synchronize all LDAP users and groups now.",
Example: " ldap sync",
RunE: withClient(ldapSyncCmdF),
}
cmd.Flags().Bool("include-removed-members", false, "Include members who left or were removed from a group-synced team/channel")
err := cmd.Flags().MarkDeprecated("include-removed-members", "This flag is deprecated and will be removed in a future version. Use LdapSettings.ReAddRemovedMembers instead.")
if err != nil {
panic(err)
}
return cmd
}
var LdapIDMigrate = &cobra.Command{
@@ -68,7 +78,7 @@ var LdapJobShowCmd = &cobra.Command{
}
func init() {
LdapSyncCmd.Flags().Bool("include-removed-members", false, "Include members who left or were removed from a group-synced team/channel")
ldapSyncCmd := newLDAPSyncCmd()
LdapJobListCmd.Flags().Int("page", 0, "Page number to fetch for the list of import jobs")
LdapJobListCmd.Flags().Int("per-page", 200, "Number of import jobs to be fetched")
@@ -80,7 +90,7 @@ func init() {
)
LdapCmd.AddCommand(
LdapSyncCmd,
ldapSyncCmd,
LdapIDMigrate,
LdapJobCmd,
)
@@ -90,9 +100,14 @@ func init() {
func ldapSyncCmdF(c client.Client, cmd *cobra.Command, args []string) error {
printer.SetSingle(true)
includeRemovedMembers, _ := cmd.Flags().GetBool("include-removed-members")
resp, err := c.SyncLdap(context.TODO(), includeRemovedMembers)
var resp *model.Response
var err error
if cmd.Flags().Changed("include-removed-members") {
reAddRemovedMembers, _ := cmd.Flags().GetBool("include-removed-members")
resp, err = c.SyncLdap(context.TODO(), &reAddRemovedMembers)
} else {
resp, err = c.SyncLdap(context.TODO(), nil)
}
if err != nil {
return err
}