function createUserList($log) { // fetch users list from gitlab and create file. $dotenv = new \Dotenv\Dotenv('.'); $dotenv->load(); $gitHost = str_replace("\"", "", getenv('GITLAB_HOST')); $gitToken = str_replace("\"", "", getenv('GITLAB_TOKEN')); $client = new \GuzzleHttp\Client(['base_uri' => $gitHost, 'timeout' => 10.0, 'verify' => false]); $response = $client->get($gitHost . "/api/v3/users", ['query' => ['private_token' => $gitToken, 'per_page' => 10000]]); if ($response->getStatusCode() != 200) { $log->error("Gitlab Get Users Status Code:" . $response->getStatusCode()); return; } $body = json_decode($response->getBody()); $users = []; foreach ($body as $u) { $users[$u->id] = ['name' => $u->name, 'username' => $u->username, 'state' => $u->state]; } $filesystem = new \League\Flysystem\Filesystem(new \League\Flysystem\Adapter\Local(__DIR__)); $filesystem->put(USER_LIST, json_encode($users, JSON_PRETTY_PRINT)); return $users; }