6260: Remove test for impossible condition.
[arvados.git] / services / datamanager / datamanager.go
index 9cfd2ee5d71891fd6dfb1ff99f496d314abcdf7c..4e3b4e95671c7a63f54be270e88df1db5cbf7b7f 100644 (file)
@@ -44,7 +44,7 @@ func main() {
        if minutesBetweenRuns == 0 {
                err := singlerun(makeArvadosClient())
                if err != nil {
-                       log.Fatalf("Got an error: %v", err)
+                       log.Fatalf("singlerun: %v", err)
                }
        } else {
                waitTime := time.Minute * time.Duration(minutesBetweenRuns)
@@ -52,7 +52,7 @@ func main() {
                        log.Println("Beginning Run")
                        err := singlerun(makeArvadosClient())
                        if err != nil {
-                               log.Printf("Got an error: %v", err)
+                               log.Printf("singlerun: %v", err)
                        }
                        log.Printf("Sleeping for %d minutes", minutesBetweenRuns)
                        time.Sleep(waitTime)
@@ -68,16 +68,12 @@ func makeArvadosClient() arvadosclient.ArvadosClient {
        return arv
 }
 
-var dataManagerToken string
-
 func singlerun(arv arvadosclient.ArvadosClient) error {
        var err error
-       if is_admin, err := util.UserIsAdmin(arv); err != nil {
-               log.Printf("Error querying current arvados user %s", err.Error())
-               return err
-       } else if !is_admin {
-               log.Printf("Current user is not an admin. Datamanager can only be run by admins.")
-               return errors.New("Current user is not an admin. Datamanager can only be run by admins.")
+       if isAdmin, err := util.UserIsAdmin(arv); err != nil {
+               return errors.New("Error verifying admin token: " + err.Error())
+       } else if !isAdmin {
+               return errors.New("Current user is not an admin. Datamanager requires a privileged token.")
        }
 
        var arvLogger *logger.Logger
@@ -93,21 +89,6 @@ func singlerun(arv arvadosclient.ArvadosClient) error {
                arvLogger.AddWriteHook(loggerutil.LogMemoryAlloc)
        }
 
-       // Verify that datamanager token belongs to an admin user
-       if dataManagerToken == "" {
-               dataManagerToken = keep.GetDataManagerToken(arvLogger)
-       }
-       origArvToken := arv.ApiToken
-       arv.ApiToken = dataManagerToken
-       if is_admin, err := util.UserIsAdmin(arv); err != nil {
-               log.Printf("Error querying arvados user for data manager token %s", err.Error())
-               return err
-       } else if !is_admin {
-               log.Printf("Datamanager token does not belong to an admin user.")
-               return errors.New("Datamanager token does not belong to an admin user.")
-       }
-       arv.ApiToken = origArvToken
-
        var (
                dataFetcher     summary.DataFetcher
                readCollections collection.ReadCollections
@@ -178,7 +159,7 @@ func singlerun(arv arvadosclient.ArvadosClient) error {
        if trashErr != nil {
                return err
        } else {
-               keep.SendTrashLists(dataManagerToken, kc, trashLists)
+               keep.SendTrashLists(kc, trashLists)
        }
 
        return nil