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;
}