Rhizome-Conifer / conifer

Collect and revisit web pages.
https://conifer.rhizome.org
Apache License 2.0
1.48k stars 120 forks source link

No documentation on how to increase quota #433

Open webster opened 7 years ago

webster commented 7 years ago

By default, webrecorder sets the user quota to 1GB. There is no documentation on where this quota can be set or modified, on a per-user or global basis.

It appears webrecorder/webrecorder/config/wr.yaml has default_max_size and default_max_anon_size variables, but changing them does not do anything on the front-end, even if running docker-compose build; docker-compose up -d or ./rebuild.sh. The foregoing is just my guessing on what to do.

Documentation on how to edit quotas would be very helpful. Thanks!

webster commented 7 years ago

I thought I'd add an update based on what I've found, just in case it helps others. I haven't figured out the original issue, though.

webrecorder has an admin panel on the front-end! This doesn't appear to be documented anywhere except other GitHub issues, but it's located by visiting /admin. However, you won't see it unless you set your user's role to an administrator.

I was running into errors using python admin.py, but the following command worked:

docker exec -it webrecorder_app_1 python -m webrecorder.admin -m

After doing that, logging in as that user will enable access to admin. There's a setting for max size and max anon size but they do not appear to do anything once changed; the account still has a 1GB max.

webster commented 7 years ago

I still haven't figured out how to make global quota changes work, but I did figure it out for individual users. If you visit /admin/users after following the above instructions, there's a user list. It doesn't appear clickable, but if you hover directly over the username, it's a link to /admin/users/[username] and there's an Increase button. Setting that solves the issue for that user.

The original issue, changing the 1GB default quota, I haven't solved.

(Sorry for being extra verbose walking through all these steps, I'm doing so in hopes it might help others.)

ikreymer commented 7 years ago

Yes, you are correct, the admin interface provides a UI for increasing the quota for an existing user.

The default should be updatable via both the console and wr.yaml config property, will take a look to see if that's not the case.

The per-user settings are best updated through the admin interface currently.

You can change all of the settings by using the redis command line tool:

The defaults are stored in the h:defaults key docker exec -it webrecorder_redis_1 redis-cli -n 1 hgetall h:defaults

To change the default max to <value>, you can do: docker exec -it webrecorder_redis_1 redis-cli -n 1 hset h:defaults max_size <value>

Per-user max_size can be accessed via: docker exec -it webrecorder_redis_1 redis-cli -n 1 hget u:<user>:info max_size

To set max size for <user> to <value>: docker exec -it webrecorder_redis_1 redis-cli -n 1 hset u:<user>:info max_size <value>

Hope this help for now! Thanks for reminding about the need for better docs on this.

ccc2lu commented 4 years ago

I'm glad I found this thread -- the problem of being able to set the default size still seems to be there. I changed the default_max_size and ran recreate.sh, and it didn't affect anything. I was only able to increase user storage quota limits by making myself an admin using the webrecorder.admin -m mentioned in the above comments, then going to //_settings and changing the "allot space" value. The "/admin/users" page doesn't appear to exist anymore. The above steps for getting and setting user configuration values and setting roles should REALLY be in a section of the documentation in README.md. There webrecorder.admin CLI interface is mentioned, but not what you can do with it, or what user roles there even are.