Closed DeeDeeG closed 5 years ago
The new Heroku 18
stack doesn't work with Ruby 2.3 or older. (Source.)
So this depends on us updating Ruby, which is #523.
Edit: (For the record, the Heroku 16
stack apparently supports the Ruby 2.3 series just fine. So we could move to Heroku 16. I think it would be even better to move directly to Heroku 18, though. Planning to merge #525 today so we will have up-to-date Ruby, so this comment will be a moot point then.)
Edit 2: Ruby 2.5 is merged!
I updated this with concrete steps to finish the Heroku stack upgrade.
In my experience fiddling around on my personal account's Heroku dashboard, this is a really easy upgrade. Could maybe even take under a minute if you were trying to go fast. Which, um... I'm not saying we should rush through something like this... But, it could be just a couple of minutes when someone gets any spare time.
Some explanation or insight, in case this is useful: From what I gather, updating the Heroku stack is about running on a newer Ubuntu operating system release. We are on Ubuntu 14.04 right now (the release from 2014)... And Heroku 16 is Ubuntu 16.04 (April 2016)... Likewise, Heroku 18 is Ubuntu 18.04 (April 2018).
Nothing about that kind of operating system upgrade necessarily breaks a Rails app, and in general, it should tend not to break established software like Rails.
As mentioned in a previous comment, I have tested this on my own Heroku account, using the 18 stack with our app, and it worked out 100% fine. I can't make this change for our actual deploy, because I don't have the permissions, but I think this is a really easy thing to do, and that it would be good to do this before the deadline sneaks up on us. That way we have the flexibility to roll back if there is any reason to, etc.
I would love to see us on the 18 stack, since that's more recent than 14 or 16, and we can stay on it for about four or five years if we want.
Major new Ubuntu releases are every two years, for the record, so I assume that's roughly how often new Heroku stacks are going to be released. Ubuntu Long Term Support releases are supported by the company that makes Ubuntu (namely Canonical) for five years after release. In step with that, Heroku 18 says it will be supported through April 2018.
Pinging @mi-wood, @tkwidmer.
Just a quick reminder that this issue would temporarily block us from deploying updates of the site past March 31st 2019.
Solving this (moving to a new Heroku stack) should be just a button press over at the Heroku dashboard. :+1:
Updated this and deployed.
Hi folks,
According to Heroku, Cedar-14 is now deprecated.
Scope / Difficulty
EASY. Surprisingly easy. It's just a button press, actually.
Impact
Not much, for now. The current release of our web app will keep running as-is. But starting in April Heroku will stop accepting new builds of our app targeting
Cedar 14
.Switching to the
Heroku 16
orHeroku 18
platform allows us to keep deploying our app after April.Proposed solution
We can update to "Heroku 16" (based on Ubuntu 16.04 Trusty) or "Heroku 18" (based on Ubuntu 18.04 Bionic). For details on these: https://devcenter.heroku.com/articles/stack
How to actually do this
app.json
to include:"stack": "heroku-18"
Also: Here is the official guide to updating: https://devcenter.heroku.com/articles/upgrading-to-the-latest-stack