Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Heroku ending free tier #101

Open
asmeurer opened this issue Aug 25, 2022 · 9 comments
Open

Heroku ending free tier #101

asmeurer opened this issue Aug 25, 2022 · 9 comments

Comments

@asmeurer
Copy link
Member

Heroku is ending their free tier, starting November 28, 2022. https://blog.heroku.com/next-chapter

Once this happens the bot will stop working, unless we switch to a paid plan. We can request open source credits from them. I am emailing them to make the request.

If they don't give us credits, we should consider moving the bot activities to GitHub actions. This will be easier to maintain, but the downside is that actions run much slower than the bot.

@asmeurer
Copy link
Member Author

There are also Heroku alternatives https://twitter.com/jacobian/status/1562833339345936385. It might be just as much work to move to them as to GitHub Actions, though, so if we are going to move, IMO we should just move to GitHub Actions for the increased maintainability. TBH I would have just used GitHub Actions for this if it had existed when I started, even though I've been pretty happy with the speed and overall reliability of Heroku.

@asmeurer
Copy link
Member Author

asmeurer commented Dec 1, 2022

Heroku has graciously granted us credits through January with their open source credits program, but they have told me that the program will not be extended further than that, so we need to either come up with an alternative or pay for Heroku credits (the credits they have granted us are $7/mo. so I expect it may cost roughly that much).

CC @certik @oscarbenjamin

@moorepants
Copy link
Member

I switched over to render.com. It still has a free tier. Maybe that is an option?

@certik
Copy link
Member

certik commented Dec 1, 2022

I think $7/month is fine to pay if needed.

@asmeurer
Copy link
Member Author

asmeurer commented Dec 1, 2022

Looks like render does have a free tier https://render.com/docs/free. Here is their Heroku migration guide https://render.com/docs/migrate-from-heroku.

@asmeurer
Copy link
Member Author

asmeurer commented Dec 9, 2022

Trying render at #102, but currently it isn't working.

I'm also trying replit, which has a Heroku import (https://replit.com/@asmeurer/sympy-bot). I set up the secrets and the webhook for replit, but it isn't working. I get the error

Traceback (most recent call last):
  File "/home/runner/sympy-bot/venv/lib/python3.8/site-packages/aiohttp/web_protocol.py", line 433, in _handle_request
    resp = await request_handler(request)
  File "/home/runner/sympy-bot/venv/lib/python3.8/site-packages/aiohttp/web_app.py", line 504, in _handle
    resp = await handler(request)
  File "/home/runner/sympy-bot/sympy_bot/webapp.py", line 33, in main_post
    event = sansio.Event.from_http(request.headers, body, secret=secret)
  File "/home/runner/sympy-bot/venv/lib/python3.8/site-packages/gidgethub/sansio.py", line 131, in from_http
    raise ValidationFailure("secret not provided")
gidgethub.ValidationFailure: secret not provided

@asmeurer
Copy link
Member Author

asmeurer commented Dec 9, 2022

OK, I got replit to work (it wasn't obvious from the interface, but you have to manually restart it when you add an environment variable). So the bot should be live again for now. Replit is pretty clunky in my experience with it so far, but we'll see.

@asmeurer
Copy link
Member Author

Just opened a PR (sympy/sympy#24361) and the bot didn't show up until I fiddled with it. So that's not a good sign for replit.

Meanwhile, Heroku support isn't being particularly helpful (they're just telling me to do the things I've already tried doing).

@asmeurer
Copy link
Member Author

Got Heroku running again. I have disabled the replit webhook, but it can be reenabled to make it work again (you may also have to go to https://replit.com/@sympy/sympy-bot and manually start it, which probably only I have access to do right now). Replit kept turning off and doesn't seem to consistently wake itself up when it receives a webhook, so I'm not a fan of it.

I never figured out the problem with the render deploy #102.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants