-
Notifications
You must be signed in to change notification settings - Fork 308
Conversation
The biggest change is that we'll need to install uwsgi or gunicorn or something (#1868) and start using that, because in 0.31 we ripped out Aspen's built-in app server. |
I'm looking at this. |
Using either uswgi or gunicorn, I get an error trying to connect to postgres. |
It's difficult to debug because I can't get to pdb because of the process boundary. |
|
Rebased on master and added the commit to remove our temporary copy of |
Rebased on master. |
@Changaco So the reason this is going slower than expected is because we made changes affecting JSON simplates. We did away with JSON simplates as a special case; now they're regular simplates that use a |
cc: @pjz |
@whit537 That's okay, this PR isn't blocking anything else now, so there's no rush to land it. |
There are some JSON files that must not be covered by the test suite, because with that last commit I fixed all the SyntaxErrors I was seeing, and there are *.json.spt files that I didn't touch there. |
I went with gunicorn for a web server, because it is much simpler to configure than uwsgi. Note that this Makefile requires a patched version of Honcho. I made a PR but I don't know if it will be accepted: nickstenning/honcho#71
With this newer version of Aspen we no longer have special-cased JSON simplates. Instead they are now regular rendered/negotiated simplates that utilize a json_dump renderer.
This version fixes a bug where we couldn't just do `honcho run -e foo.env py.test`.
We're not using Cheroot anymore.
@Changaco Your additional commits look good so far. Still need to sort out js tests, looks like? |
I'm debugging the Gruntfile gunicorn killing issue. |
The problem is that when the |
Hypothesis: the Test: Stub out a |
#!/usr/bin/env python
import signal
import sys
import time
out = open('foo.log', 'w+')
def handler(signum, frame):
print >> out, 'Killed!'
raise SystemExit
signal.signal(signal.SIGTERM, handler)
slept = 0
while 1:
print >> out, "Still here."
time.sleep(0.3)
slept += 1
if slept == 3:
print >> sys.stderr, "Starting gunicorn " |
Result: No! The server process does receive the
|
Here's a demonstration of the problem:
|
We're calling |
Relevant: nickstenning/honcho#32. |
Honcho does not behave well when sent a SIGTERM. See: nickstenning/honcho#32 I started down the rabbit hole of dusting off that PR, but ran out of steam. This commit simply takes honcho out of the mix when calling grunt test.
Oh well. Worked on nickstenning/honcho#32 for a while and gave up. Ready on this PR when you are, @Changaco. |
I tried to deploy this, it didn't work, so I looked for potential problems and made some changes, but it still doesn't work. The heroku error we're getting is H20 App boot timeout. |
Problem solved. IRC. |
@whit537 I need your help on this one.