diff options
Diffstat (limited to 'cmd/platform/ldap.go')
-rw-r--r-- | cmd/platform/ldap.go | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/cmd/platform/ldap.go b/cmd/platform/ldap.go new file mode 100644 index 000000000..8f3aa0c81 --- /dev/null +++ b/cmd/platform/ldap.go @@ -0,0 +1,39 @@ +// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. +package main + +import ( + "github.com/mattermost/platform/einterfaces" + "github.com/spf13/cobra" +) + +var ldapCmd = &cobra.Command{ + Use: "ldap", + Short: "LDAP related utilities", +} + +var ldapSyncCmd = &cobra.Command{ + Use: "sync", + Short: "Synchronize now", + Long: "Synchronize all LDAP users now.", + Example: " ldap sync", + RunE: ldapSyncCmdF, +} + +func init() { + ldapCmd.AddCommand( + ldapSyncCmd, + ) +} + +func ldapSyncCmdF(cmd *cobra.Command, args []string) error { + if ldapI := einterfaces.GetLdapInterface(); ldapI != nil { + if err := ldapI.Syncronize(); err != nil { + CommandPrintErrorln("ERROR: AD/LDAP Synchronization Failed") + } else { + CommandPrettyPrintln("SUCCESS: AD/LDAP Synchronization Complete") + } + } + + return nil +} |