Carol Willing
ac33ba6ff4
Merge pull request #1316 from minrk/rm-scoped-session
...
drop scoped_session
2017-08-06 09:01:50 -07:00
Carol Willing
3b4888b8ba
Merge pull request #1314 from minrk/spawner.start-doc
...
update spawner.start docs
2017-08-06 08:58:49 -07:00
Carol Willing
5c64c88d5a
Merge pull request #1312 from minrk/reverse-generated-token
...
reverse generated-tokens default logic
2017-08-06 08:57:27 -07:00
Carol Willing
924d095c68
Merge pull request #1311 from minrk/oauth-token-no-service
...
handle OAuthAccessTokens with no user
2017-08-06 08:49:37 -07:00
Min RK
700ccb17cb
Merge pull request #1317 from minrk/proxy-check-routes
...
disable periodic check_routes during proxy tests
2017-08-06 15:06:36 +02:00
Min RK
1d156f8183
disable periodic check_routes during proxy tests
...
can race tests and create inconsistent state
2017-08-06 14:39:42 +02:00
Min RK
c0e2c5cb71
drop scoped_session
...
this was an artifact of the now-removed test thread
2017-08-06 14:29:10 +02:00
Min RK
25d19732e0
keep salting generated tokens
...
all the savings are in rounds, but keep salt because it still prevents the ability to hash a token once and check it against the whole db
2017-08-06 14:16:47 +02:00
Min RK
f0b8d56e9f
fix oauth hashed column sizes
2017-08-06 13:28:06 +02:00
Min RK
718a3fe7ef
update spawner.start docs
...
remove mention of self.user.server, which is deprecated in 0.7
2017-08-06 13:15:46 +02:00
Carol Willing
ca6e0ec9b9
Merge pull request #1307 from minrk/last_activity
...
remove last_activity from server
2017-08-05 15:34:45 -07:00
Min RK
a27765f7d5
reverse generated-tokens default logic
...
user-provided tokens are added in exactly one place,
so switch default handling of tokens to generated=True
and explicitly distrust user tokens.
Add JupyterHub.trust_user_provided_tokens flag so that users can avoid the extra hashing
if they know they are providing good keys.
2017-08-05 15:36:03 +02:00
Min RK
bf1dd03df3
handle OAuthAccessTokens with no user
...
This shouldn’t happen, raise if it does.
If a token API request is authenticated with no user or service, delete the token because it is invalid and return with 404 because it doesn’t correspond to an existing user.
2017-08-05 15:01:22 +02:00
Min RK
2726648982
typo in OAuthAccessToken.service
...
Token.session doesn’t exist
OAuthAccessTokens are never associated with services
2017-08-05 14:58:41 +02:00
Min RK
275a4ce18d
remove last_activity from server
...
and put it on individual spawners
2017-08-05 14:55:09 +02:00
Carol Willing
0b34e13dd4
Merge pull request #1303 from minrk/message-202
...
consolidate server APIHandlers
2017-08-04 07:43:40 -07:00
Carol Willing
e666261434
Merge pull request #1308 from minrk/rest-api-finish
...
finish up oauth swagger doc
2017-08-04 07:40:06 -07:00
Min RK
57c8ad6b92
consolidate server APIHandlers
...
no need for separate handlers for named and default servers
avoid claiming that empty responses are JSON.
2017-08-04 16:17:20 +02:00
Min RK
3f032abc25
finish oauth swagger doc
...
- clarify that /authorize is not really an API endpoint, but the redirect target
- /oauth2/token accepts x-www-form-urlencoded not json
2017-08-04 15:23:50 +02:00
Carol Willing
f86202c07d
Update link to Jupyter contributor guide
2017-08-04 04:02:18 -07:00
Min RK
1b0ff0a5f6
Merge pull request #1093 from willingc/oauth-doc
...
Add docs for OAuth
2017-08-04 12:14:01 +02:00
Carol Willing
cebb962645
Edit per mirnk review
2017-08-03 10:34:12 -07:00
Min RK
55000f98bc
include non-empty body with 202 responses
...
reply claims to be application/json, so make sure it has some content
2017-08-03 12:01:19 +02:00
Min RK
449aff1b1d
Merge pull request #1302 from minrk/properties
...
restore user.running property
2017-08-03 12:00:52 +02:00
Min RK
3c591f744b
Merge pull request #1305 from minrk/alembic-log
...
hook up alembic logging to Hub app if it's running
2017-08-03 11:46:32 +02:00
Min RK
329781023f
use futures to avoid races on slow spawners
...
trigger events by hand so that performance can't cause races
2017-08-03 11:45:29 +02:00
Min RK
8d9731e241
hook up alembic logging to Hub app if it's running
...
avoids calling `logging.fileConfig` which disables all exiting logging when called
2017-08-03 11:28:53 +02:00
Min RK
bde37ba9c2
Merge pull request #1299 from minrk/hash-auto
...
only apply reduced hash+salt to internally generated tokens
2017-08-03 11:13:25 +02:00
Min RK
088fdc8f42
Deprecate User.spawn|stop_pending flags
...
Rather than removing them immediately
2017-08-03 11:12:10 +02:00
Min RK
886005be2a
handle named servers in user_stopped callback
2017-08-03 11:09:28 +02:00
Min RK
684afed3f1
restore user.running property
...
it was made a method for handing named_servers,
but that made things way more complicated and replaced a boolean flag with a callable,
which would behave unexpectedly but without error if a boolean flag was expected.
Spawners have properties for dealing with this now, so use spawners
Restore `user.running` as an alias for `user.spawner.ready`
2017-08-03 11:09:27 +02:00
Min RK
210d7e59fd
Merge pull request #1301 from minrk/total-running-limit
...
add active_server_limit
2017-08-03 11:08:23 +02:00
Min RK
a19a94b2c2
test active_server_limit
2017-08-03 10:52:32 +02:00
Min RK
9bf70208c8
return 'spawn' pending for spawn or proxy_pending
...
In general, we treat both the same way
2017-08-03 10:52:01 +02:00
Min RK
fada0d99f0
call it active_server_limit
2017-08-03 10:50:50 +02:00
Min RK
e6ce468301
set Spawner.server directly
...
avoids Spawner.server property looking up on the ORM every time,
which is expensive and we want to check `Spawner.server is None` often.
2017-08-03 09:59:01 +02:00
Min RK
875e5d59fe
Merge pull request #1300 from minrk/check-hub-ip
...
verify route targets in check_routes
2017-08-02 22:28:38 +02:00
Min RK
6556135a69
verify route targets in check_routes
...
updates routes that have the wrong target
2017-08-02 11:23:49 +02:00
Min RK
8636b4ebca
Merge pull request #1294 from minrk/alembic-tag
...
always include and check alembic revision
2017-08-02 11:14:44 +02:00
Min RK
4a5f914a62
only apply reduced hash+salt to internally generated tokens
...
don't trust any user-provided tokens to have decent entropy, regardless of size
2017-08-02 11:14:18 +02:00
Yuvi Panda
47b6014d13
Merge pull request #1297 from minrk/check-enabled-auth-state
...
prevent saving auth_state if auth_state is not enabled.
2017-08-01 09:24:34 -07:00
Yuvi Panda
1995d825df
Merge pull request #1293 from minrk/test-spawn-limit
...
test pending spawn count
2017-08-01 09:23:36 -07:00
Min RK
f49606dff6
add user.count_active_users
...
produces summary of active/pending/ready spawner counts
Avoids brittle bookkeeping of running counts,
computing the value upon request.
For 10k users this is still only a few milliseconds, which seems worth it
2017-08-01 17:00:45 +02:00
Min RK
7520d4b81e
add concurrent_user_limit
...
limits total active users, not just spawns
2017-08-01 16:22:54 +02:00
Min RK
083408a685
add pending/ready/active properties to Spawner
...
- pending: stop or start is pending
- ready: spawner is running and ready (not pending)
- active: spawner is running or pending (consuming resources)
2017-08-01 16:17:37 +02:00
Min RK
9c4972239d
prevent saving auth_state if auth_state is not enabled.
...
allows Authenticators to return auth_state without having to check enable_auth_state
2017-08-01 10:51:44 +02:00
Min RK
4458f2e6d4
error when db mismatches is SystemExit now
...
since we catch explicitly and call `self.exit` with a nice message
2017-07-31 17:04:27 +02:00
Min RK
a24027f188
hook up app logging in upgrade-db
...
matches default formatting
2017-07-31 16:19:47 +02:00
Min RK
c749fc05f4
update 0.8 alembic revision
...
add some missing transactions
2017-07-31 16:19:24 +02:00
Min RK
5ad77df04f
check database revision on launch
...
fail with informative error if version mismatches
Since we weren't always tagging before,
we have to handle no tag being present:
- database empty (use latest because we are about to create everything anew)
- if 'spawners' is present, assume 0.8.dev
- if 'services' is present, assume 0.7.x
- else: assume base revision when we started tracking this stuff
2017-07-31 16:18:58 +02:00